Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Bagaimana saya bisa mengetahui batasan FOREIGN KEY apa yang mereferensikan tabel di SQL Server?

Ini dia:

SELECT 
   OBJECT_NAME(f.parent_object_id) TableName,
   COL_NAME(fc.parent_object_id,fc.parent_column_id) ColName
FROM 
   sys.foreign_keys AS f
INNER JOIN 
   sys.foreign_key_columns AS fc 
      ON f.OBJECT_ID = fc.constraint_object_id
INNER JOIN 
   sys.tables t 
      ON t.OBJECT_ID = fc.referenced_object_id
WHERE 
   OBJECT_NAME (f.referenced_object_id) = 'YourTableName'

Dengan cara ini, Anda akan mendapatkan tabel referensi dan nama kolom.

Diedit untuk menggunakan sys.tables alih-alih sys.objects generik sesuai saran komentar. Terima kasih, marc_s



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Perbarui nilai kunci utama menggunakan kerangka kerja entitas

  2. LANTAI () Contoh di SQL Server

  3. 3 Cara Mendapatkan Nama Hari dari Tanggal di SQL Server (T-SQL)

  4. Database tidak dapat dibuka karena versi 782. Server ini mendukung versi 706 dan sebelumnya. Jalur penurunan versi tidak didukung

  5. Kesalahan:Pernyataan INSERT EXEC tidak dapat disarangkan. dan Tidak dapat menggunakan pernyataan ROLLBACK dalam pernyataan INSERT-EXEC. Bagaimana cara mengatasi ini?