`
yettie
  • 浏览: 196472 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

SQL Server 查询表的主键的两种方式

 
阅读更多

方式一:

select b.column_name
from information_schema.table_constraints a
inner join information_schema.constraint_column_usage b
on a.constraint_name = b.constraint_name
where a.constraint_type = 'PRIMARY KEY' and a.table_name = 'products'
go

方式二:


SELECT a.name
  FROM   syscolumns a
  inner  join sysobjects d on a.id=d.id      
  where  d.name='products' and exists(SELECT 1 FROM sysobjects where xtype='PK' and  parent_obj=a.id and name in ( 
  SELECT name  FROM sysindexes   WHERE indid in( 
  SELECT indid FROM sysindexkeys WHERE id = a.id AND colid=a.colid 
)))

分享到:
评论

相关推荐

    Navicat 实现同步sqlserver表结构到mysql操作手册1

    总的来说,Navicat提供的同步功能简化了SQL Server到MySQL的数据迁移过程,但用户仍需了解两种数据库系统的差异,以便在必要时进行额外的调整和优化。在进行跨数据库操作时,始终要谨慎处理,避免数据丢失或错误。

    详解sqlserver查询表索引

    在SQL Server中,索引是数据库管理系统为了加速数据检索而创建的一种数据结构。它们通过提供对数据表中数据的快速访问路径,显著提高了查询性能。本文将深入探讨如何查询SQL Server中的表索引,以及何时应该创建或...

    SQL SERVER-主键的建立和删除

    创建主键的基本语法分为两种情况。首先,如果你在创建新表时设置主键,可以直接在定义列的语句后加上`primary key`关键字,例如: ```sql create table 表名 ( 字段名1 int not null, ... [constraint 约束名] ...

    SQLSERVER表结构对比

    "SQLSERVER表结构对比"这个主题涉及到如何比较两个SQL Server数据库中的表定义,包括字段、索引、约束以及存储过程等差异。 SQL Server 2008 R2是在Windows 2008 R2 64位操作系统上运行的一个强大关系型数据库管理...

    sqlserver 2005 主外键-复合主键

    在SQL Server 2005中,创建包含复合主键的表可以通过以下方式实现: ```sql CREATE TABLE test ( a int, b varchar(10), CONSTRAINT [PK_tbl_ClassUDF] PRIMARY KEY CLUSTERED (a, b) ); ``` 在这个例子中,...

    关于SQL Server SQL语句查询分页数据的解决方案

    关于SQL Server SQL语句查询分页数据的解决方案 在日常工作中,我们经常需要处理大量数据,并从中获取特定页面的数据。特别是在Web应用开发中,为了提高用户体验,通常会将数据进行分页显示。针对这一需求,本文将...

    SQL Server数据导入SQLite工具

    在IT领域,数据库管理系统(DBMS)是至关重要的组成部分,SQL Server和SQLite就是两种广泛应用的DBMS。SQL Server由微软公司开发,适用于大型企业级应用,而SQLite则是一款轻量级、自包含的数据库,适合嵌入式系统和...

    SQL_Server2005_两种方法创建数据库和表

    ### SQL Server 2005 创建数据库和表的两种方法 #### 方法一:通过SQL Server Management Studio图形界面创建 **步骤1:启动SQL Server 2005** 首先需要启动SQL Server Management Studio Express,可以通过以下...

    sql server创建复合主键的2种方法

    以下是创建复合主键的两种方法: ### 方法一:在已创建的表上添加主键约束 当你已经创建了一个表,但后来决定需要一个复合主键时,可以使用`ALTER TABLE`语句来添加主键。这一步骤通常在你意识到已有两个或多个列...

    sqlserver数据库主键的生成方式小结(sqlserver,mysql)

    在SQL Server和MySQL这两种常见的数据库管理系统中,主键的生成方式主要有三种:数据库自动生成、GUID(全局唯一标识符)以及开发创建。下面将详细讨论这三种方式。 **一、数据库自动生成** 在SQL Server中,这种...

    Entityframwork sqlserver转pgsql表结构

    - **分析表结构**:首先,需要获取SQL Server中的表结构,包括字段名、数据类型、主键、外键等信息。 - **创建PostgreSQL兼容的数据模型**:根据SQL Server的表结构,调整Entity Framework的数据模型,使其符合...

    sqlserver 2008 创建数据表 详解

    在SQL Server 2008中,创建表有两种主要方法: 1. **使用SQL Server Management Studio (SSMS)**: - 打开SQL Server Management Studio。 - 展开目标数据库。 - 右击“表”节点,选择“新建表”。 - 在表设计...

    SQLServer高频面试题及答案

    SQL Server高频面试题及答案 数据库基础知识篇 1. 主键、外键、超键、候选键 超键是关系模式中能唯一标识元组的属性集。候选键是最小超键,即没有冗余元素的超键。主键是数据库表中对储存数据对象予以唯一和完整...

    SQL Server 利用触发器对多表视图进行更新的实现方法

    在SQL Server中,触发器是一种特殊的存储过程,它在数据更改操作(如INSERT、UPDATE或DELETE)发生时自动执行。本示例展示了如何利用触发器来实现对多表视图的更新,具体涉及了以下几个关键知识点: 1. **触发器的...

    SQL Server2005基本方法和语句

    在数据库管理与开发领域,SQL Server 2005 是一个重要的工具,它提供了丰富的功能来满足数据存储、管理和查询的需求。本文将深入解析 SQL Server 2005 的基本方法与常用语句,包括数据库的创建与删除、表的创建与...

    SQLServer数据库设计和高级查询15

    ### SQLServer数据库设计和高级查询15 #### 数据库设计基础 在进行SQL Server数据库设计时,我们需要关注以下几个核心方面: 1. **需求分析**:首先明确系统的需求,包括业务需求和技术需求。业务需求通常涉及...

    战胜SQL Server必做练习50题

    50题练习应涵盖以上知识点,从基础到进阶,包括简单查询、多表联接、子查询、事务控制、性能调优等多个方面,逐步提升对SQL Server的理解和操作能力。通过解决实际问题,你可以更好地掌握SQL Server,成为数据库管理...

    基于sql server 2005学习sql

    表的设计涉及数据类型的选择、主键的设置、外键的使用,以及索引的创建,以优化查询性能。 四、存储过程与触发器 存储过程是预编译的SQL语句集合,可以提高性能并简化复杂的操作。在SQL Server 2005中,可以使用...

    数据库sqlserver 2008课后实验答案

    在实验中,我们讨论了两种身份验证模式:Windows身份验证和SQL Server身份验证。Windows身份验证依赖于用户的Windows凭据,而SQL身份验证则需要在SQL Server中定义的用户名和密码。实例是SQL Server数据库引擎的独立...

Global site tag (gtag.js) - Google Analytics