Mencari Kunci Utama Jadual Menggunakan Pertanyaan SQL dalam Pelayan SQL
Dalam Pelayan SQL, mendapatkan kunci utama jadual menggunakan pertanyaan SQL melibatkan sedikit pendekatan yang berbeza berbanding MySQL. Terokai pilihan pertanyaan berikut untuk mendapatkan maklumat kunci utama:
Pertanyaan Pelayan SQL:
Satu pertanyaan yang biasa digunakan untuk SQL Server ialah:
SELECT name AS PrimaryKey FROM sysobjects WHERE xtype = 'PK' AND name IN ( SELECT name FROM sysindexes WHERE id = object_id(TableName) )
Ganti TableName dengan nama jadual sebenar dalam pertanyaan.
Satu lagi Pertanyaan Pelayan SQL:
Pertanyaan alternatif untuk Pelayan SQL disediakan di bawah:
SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE OBJECTPROPERTY(OBJECT_ID(CONSTRAINT_SCHEMA + '.' + QUOTENAME(CONSTRAINT_NAME)), 'IsPrimaryKey') = 1 AND TABLE_NAME = 'TableName' AND TABLE_SCHEMA = 'Schema'
Sekali lagi, gantikan TableName dan Skema dengan nilai yang sesuai.
Pertanyaan Universal untuk MySQL dan SQL Server (Tidak Disyorkan):
Sementara tidak ada persamaan langsung dengan pertanyaan MySQL yang disebut dalam soalan untuk SQL Server, seseorang boleh menggunakan pertanyaan yang lebih kompleks yang sepatutnya berfungsi dalam kedua-dua sistem pangkalan data:
SELECT T.COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS AS T LEFT JOIN (SELECT DISTINCT C.TABLE_NAME, C.COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS U JOIN INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE AS C ON U.TABLE_SCHEMA = C.TABLE_SCHEMA AND U.TABLE_NAME = C.TABLE_NAME AND U.CONSTRAINT_NAME = C.CONSTRAINT_NAME) AS S ON T.TABLE_NAME = S.TABLE_NAME AND T.COLUMN_NAME = S.COLUMN_NAME WHERE T.TABLE_SCHEMA = 'TableName_Schema' AND T.TABLE_NAME = 'TableName'
Walaupun pertanyaan ini mungkin berfungsi dalam kedua-dua MySQL dan SQL Server, ia kurang cekap dan tidak disyorkan untuk prestasi optimum.
Atas ialah kandungan terperinci Bagaimana untuk Mencari Kunci Utama Jadual dalam Pelayan SQL Menggunakan Pertanyaan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!