当前位置: 首页 > news >正文

SQL查询主键

为什么80%的码农都做不了架构师?>>>   hot3.png

1:利用SQL自带的存储过程
EXEC sp_pkeys @table_name='表名'



2:利用系统表INFORMATION_SCHEMA.KEY_COLUMN_USAGE 


SELECT TABLE_NAME,COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE

 WHERE TABLE_NAME='表名'


判断SQL SERVER Table是否存在自增列

关于SQL SERVER自增列 
判断Table是否存在自增列(Identity column):

declare @Table_name varchar(60)
set @Table_name = '';
if Exists(Select top 1 1 from sysobjects
           Where objectproperty(id, 'TableHasIdentity') = 1
             and upper(name) = upper(@Table_name)
         )
     select 1
else select 0

-- or
if Exists(Select top 1 1 from sysobjects so
           Where so.xtype = 'U'
             and upper(so.name) = upper(@Table_name)
             and Exists(Select Top 1 1 from syscolumns sc
                         Where sc.id = so.id
                           and columnproperty(sc.id, sc.name, 'IsIdentity') = 1
                       )
         )
       select 1
else select 0

判断Table是否存在自增列(Identity column),并查出自增列相关数据

declare @Table_name varchar(60)

set @Table_name = 'user';

Select so.name Table_name,                   --表名字

       sc.name Iden_Column_name,             --自增字段名字

       ident_current(so.name) curr_value,    --自增字段当前值

       ident_incr(so.name) incr_value,       --自增字段增长值

       ident_seed(so.name) seed_value        --自增字段种子值

  from sysobjects so 

Inner Join syscolumns sc

    on so.id = sc.id

       and columnproperty(sc.id, sc.name, 'IsIdentity') = 1

Where upper(so.name) = upper(@Table_name)

转载于:https://my.oschina.net/baobao/blog/14220

相关文章:

  • Makefile编写 五 隐含规则
  • 解决错误“PHP has encountered an Access Violation at 01551077”
  • Qstring
  • Eclipse中的项目删除
  • mysql5.1,5.5,5.6做partition时支持的函数
  • 一个优秀的系统集成工程师应具备哪些技能
  • 关于王道论坛在UCWEB中打开的问题
  • Vim乱码问题解决
  • GIT分支管理是一门艺术(转)
  • Agile PLM EC Client Product Structure
  • SQL语句小细节
  • mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
  • 多线程下race condition问题
  • git pull远程所有分支
  • 网卡硬件时间戳之 --- shtx-hardware标志
  • [译] 怎样写一个基础的编译器
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • exif信息对照
  • JavaScript 基本功--面试宝典
  • JavaScript 无符号位移运算符 三个大于号 的使用方法
  • PHP 小技巧
  • 入口文件开始,分析Vue源码实现
  • 通过几道题目学习二叉搜索树
  • 一加3T解锁OEM、刷入TWRP、第三方ROM以及ROOT
  • 7行Python代码的人脸识别
  • 小白应该如何快速入门阿里云服务器,新手使用ECS的方法 ...
  • ​HTTP与HTTPS:网络通信的安全卫士
  • #stm32整理(一)flash读写
  • $.ajax()
  • (+3)1.3敏捷宣言与敏捷过程的特点
  • (12)目标检测_SSD基于pytorch搭建代码
  • (C#)获取字符编码的类
  • (C语言)fread与fwrite详解
  • (C语言)求出1,2,5三个数不同个数组合为100的组合个数
  • (二)hibernate配置管理
  • (二)JAVA使用POI操作excel
  • (十三)Flask之特殊装饰器详解
  • (四)模仿学习-完成后台管理页面查询
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • (一)VirtualBox安装增强功能
  • (已更新)关于Visual Studio 2019安装时VS installer无法下载文件,进度条为0,显示网络有问题的解决办法
  • (转)Java socket中关闭IO流后,发生什么事?(以关闭输出流为例) .
  • (转)母版页和相对路径
  • .md即markdown文件的基本常用编写语法
  • .NET/C# 的字符串暂存池
  • .NET6使用MiniExcel根据数据源横向导出头部标题及数据
  • @property python知乎_Python3基础之:property
  • @Resource和@Autowired的区别
  • [20190113]四校联考
  • [Angular] 笔记 18:Angular Router
  • [C#]猫叫人醒老鼠跑 C#的委托及事件
  • [CSS]盒子模型
  • [JS] 常用正则表达式集(一)
  • [LeetCode] NO. 387 First Unique Character in a String
  • [Linux] PHP程序员玩转Linux系列-telnet轻松使用邮箱