Tôi muốn tìm kiếm một chuỗi trong tên của các cột có trong cơ sở dữ liệu.
Tôi đang làm việc trong một dự án bảo trì và một số cơ sở dữ liệu tôi xử lý có hơn 150 bảng, vì vậy tôi đang tìm cách nhanh chóng để làm điều này.
Bạn đề xuất món gì?
Tôi muốn tìm kiếm một chuỗi trong tên của các cột có trong cơ sở dữ liệu.
Tôi đang làm việc trong một dự án bảo trì và một số cơ sở dữ liệu tôi xử lý có hơn 150 bảng, vì vậy tôi đang tìm cách nhanh chóng để làm điều này.
Bạn đề xuất món gì?
Câu trả lời:
Bạn có thể sử dụng truy vấn sau để liệt kê tất cả các cột hoặc cột tìm kiếm trên các bảng trong cơ sở dữ liệu.
USE AdventureWorks
GO
SELECT t.name AS table_name,
SCHEMA_NAME(schema_id) AS schema_name,
c.name AS column_name
FROM sys.tables AS t
INNER JOIN sys.columns c ON t.OBJECT_ID = c.OBJECT_ID
WHERE c.name LIKE '%EmployeeID%'
ORDER BY schema_name, table_name;
Bạn có thể sử dụng các khung nhìn information_schema để liệt kê tất cả các đối tượng trong cơ sở dữ liệu SQL Server 2005 hoặc 2008.
SELECT * FROM information_schema.tables
SELECT * FROM information_schema.columns
http://blog.sqlauthority.com/2008/08/06/sql-server-query-to-find-column-from-all-tables-of-database/
Ngoài ra còn có SQL Search - một công cụ miễn phí tích hợp với SQL Server Management Studio.
Muộn một nhưng hy vọng hữu ích vì cả hai công cụ đều miễn phí.
ApexQuery Search - điều hay của công cụ này là nó cũng có thể tìm kiếm dữ liệu, hiển thị các phụ thuộc giữa các đối tượng và vài thứ hữu ích khác.
SSMS Toolpack - miễn phí cho tất cả các phiên bản ngoại trừ SQL 2012. Rất nhiều tùy chọn tuyệt vời không chỉ liên quan đến tìm kiếm như đoạn trích, các tùy chỉnh khác nhau và hơn thế nữa.