科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道在SQL中用 SP_KEYS确定一个表格的关键键

在SQL中用 SP_KEYS确定一个表格的关键键

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

如果你现在需要找到一个表格是否有一个关键键,你可以使用系统中的存储进程sp_pkeys。系统的存储进程具体有三个输入参数

作者:赛迪网 67131 来源:天新网 2008年3月25日

关键字: 数据库 SQL Server Mssql SQL

  • 评论
  • 分享微博
  • 分享邮件

如果你现在需要找到一个表格是否有一个关键键,你可以使用系统中的存储进程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
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章