程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> 更多數據庫知識 >> 在SQL中用 SP_KEYS確定一個表格的關鍵鍵

在SQL中用 SP_KEYS確定一個表格的關鍵鍵

編輯:更多數據庫知識

如果你現在需要找到一個表格是否有一個關鍵鍵,你可以使用系統中的存儲進程sp_pkeys。系統的存儲進程具體有三個輸入參數:  

@table_name:這個是詢問語句中表格的名字,在通配符沒有被使用的時候它是一個必須使用的參數。

@table_owner:這個是表格系主.

@table_qualifier:這個是表格所在地的數據庫名字 (這個很讓人產生一種誤解,因為你必須執行表格所在地的數據庫中的這個進程)  

sp_keys進程將返回這個信息:

 

  TABLE_QUALIFIER
  TABLE_OWNER
  TABLE_NAME
  COLUMN_NAME
  KEY_SEQ
  PK_NAME
  

同樣的,你可以使用sp_keys系統的存儲進程在關鍵鍵中找到表格。  

下面的代碼將會從North Wind的檢索關鍵鍵的信息順序表格中檢索關鍵鍵:

 

USE NORTHWIND
GO
EXEC sp_pkeys @table_name = N'Orders',
 @table_owner = N'dbo', @table_qualifier = N'Northwind'
GO
SELECT TC.CONSTRAINT_CATALOG, TC.CONSTRAINT_SCHEMA, 
TC.TABLE_NAME, KCU.COLUMN_NAME, 
KCU.ORDINAL_POSITION, KCU.CONSTRAINT_NAME
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS TC
JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE KCU
ON TC.TABLE_NAME = KCU.TABLE_NAME
AND TC.CONSTRAINT_NAME = KCU.CONSTRAINT_NAME
WHERE TC.TABLE_NAME = N'Orders' 
AND TC.CONSTRAINT_TYPE = N'PRIMARY KEY'
GO
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved