Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Biết mối quan hệ giữa tất cả các bảng của cơ sở dữ liệu trong SQL Server

Đôi khi, một biểu diễn dạng văn bản cũng có thể hữu ích; với truy vấn này trên các dạng xem danh mục hệ thống, bạn có thể nhận được danh sách tất cả các mối quan hệ FK và cách liên kết hai bảng (và chúng hoạt động trên cột nào).

SELECT
    fk.name 'FK Name',
    tp.name 'Parent table',
    cp.name, cp.column_id,
    tr.name 'Refrenced table',
    cr.name, cr.column_id
FROM 
    sys.foreign_keys fk
INNER JOIN 
    sys.tables tp ON fk.parent_object_id = tp.object_id
INNER JOIN 
    sys.tables tr ON fk.referenced_object_id = tr.object_id
INNER JOIN 
    sys.foreign_key_columns fkc ON fkc.constraint_object_id = fk.object_id
INNER JOIN 
    sys.columns cp ON fkc.parent_column_id = cp.column_id AND fkc.parent_object_id = cp.object_id
INNER JOIN 
    sys.columns cr ON fkc.referenced_column_id = cr.column_id AND fkc.referenced_object_id = cr.object_id
ORDER BY
    tp.name, cp.column_id

Đưa nó vào Excel và bạn có thể chia nhỏ và xúc xắc - dựa trên bảng mẹ, bảng được tham chiếu hoặc bất kỳ thứ gì khác.

Tôi thấy hướng dẫn trực quan hữu ích - nhưng đôi khi, tài liệu dạng văn bản cũng tốt (hoặc thậm chí tốt hơn) - chỉ với 2 xu của tôi .....



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. tách chữ và số bằng sql

  2. Cách áp dụng định dạng có điều kiện cho một số trong SQL Server bằng cách sử dụng FORMAT ()

  3. Làm cách nào để kiểm tra xem một cột có tồn tại trong bảng SQL Server hay không?

  4. SQL Server chuyển đổi chuỗi thành datetime

  5. Dấu thời gian Chèn và Cập nhật hàng trong SQL Server 2008