`

判断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 = '';

declare @Table_name varchar(60)
set @Table_name = 'zy_cost_list';
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)

分享到:
评论

相关推荐

    SQL Server 2008怎样添加自增列实现自增序号

    在做《机房收费系统》的时候,有的表需要添加自增列,在添加新纪录时自动添加一个序号。下面我给大家介绍两种添加方法: 一、通过T-SQL代码. 代码如下: alter table 表名 add 列名 int IDENTITY(1,1) NOT NULL 这里...

    SQL SERVER 自增列

    判断Table是否存在自增列(Identity column)

    SQL server 自增ID–序号自动增加的字段操作

    1、SQL server中创建表,带有自增列。 create table Test_Table(Id int Identity(1,1), Name varchar(20)); 这里用到了IDENTITY 关键字。IDENTITY(a,b),a b均为正整数,a表示开始数,b表示步长。 IDENTITY(1,1)就...

    SQL 在自增列插入指定数据的操作方法

    SQL Server 中数据表往往会设置自增列,常见的比如说 首列的ID列。 往数据表插入新数据的时候,自增列是跳过的,无需插入即会按照设置的自增规则进行列增长。那么,如果我们想往自增列插入我们指定的数据时该怎么做...

    Oracle 实现类似SQL Server中自增字段的一个办法

    创建触发器: 代码如下:create or replace TRIGGER TRIG_TEST BEFORE INSERT ON TABLE1 FOR EACH ROW DECLARE tmpVar NUMBER; BEGIN tmpVar := 0; Select SEQU_PROC_ASSOCIATEINFO.NextVal into tmpVar f

    SQL Server中identity(自增)的用法详解

    一、identity的基本用法 1.含义 identity表示该字段的值会自动更新,不需要我们维护,通常情况下我们不可以直接给identity修饰的...create table student1 ( sid int primary key identity, sname nchar(8) not null,

    SqlServer 在事务中获得自增ID的实例代码

    SqlServer 在事务中获得自增ID实例代码 在sqlserver 中插入数据时,如何返回自增的主键ID,方式有很多,这里提供一种。 代码如下: USE tempdb go CREATE TABLE table1 ( id INT, employee VARCHAR(32) ) go ...

    sqlserver自定义函数

    ---在sql2005下创建测试数据表,如果是sql2005则用本段来判断数据表是否存在 ---if exists(select 1 from sys.tables where name='w01') ---drop table w01 ----开始创建测试数据库 GO create table w01(gs903 ...

    SQL Server数据表字段自定义自增数据格式的方法

    本文实例讲述了SQL Server数据表字段自定义自增数据格式的方法。分享给大家供大家参考,具体如下: --修改数据表SYS_Company中字段CompanyId自定义自增约束 ALTER TABLE [dbo].[SYS_Company] Add Constraint DF_SYS...

    实现SqlServer数据库批量添加表注释和列注释源代码

    实现SqlServer数据库批量添加表注释和列注释源代码 配置yml类型的配置文件, 格式如下: table: - name: SysUser note: 系统用户 column: - name: UserID note: 用户表自增ID - name: UserCode note: 用户...

    Log Explorer for SQL Server v4.22 含注册机

    执行Drop Table和Truncate Table命令虽然会被SQLServer记录到日志文件中,但是并不记录被删除的数据。你可以使用LogExplore提供的功能来恢复这些数据。LogExplore提供两种机制来恢复被Drop或者Truncate的数据。 1、...

    SqlServer 序号列的实现方法

    对于 SQL SERVER 2000 及更早的版本,需要使用一个自增列,结合临时表来实现。 代码如下:SELECT [AUTOID] = IDENTITY(int,1,1), * INTO #temp_table FROM 表名; 代码如下:SELECT * FROM #temp_table; 从 SQL SERVER ...

    SQL Server设置主键自增长列(使用sql语句实现)

    1.新建一数据表,里面有字段id,将id设为为主键 代码如下: create table tb(id int,constraint pkid primary key (id)) create table tb(id int primary key ) 2.新建一数据表,里面有字段id,将id设为主键且自动...

    Oracle中使用触发器(trigger)和序列(sequence)模拟实现自增列实例

    问题:在SQL Server数据库中,有自增列这个字段属性,使用起来也是很方便的。而在Oracle中却没有这个功能,该如何实现呢? 答:在Oracle中虽然没有自增列的说法,但却可以通过触发器(trigger)和序列(sequence)来模式...

    使用SQL Server 获取插入记录后的ID(自动编号)

    最近在开发项目的过程中遇到一个问题,就是在插入一条记录的后要立即获取所在数据库中ID,而该ID是自增的,怎么做?在sql server 2005中有几种方式可以实现。...–执行下面SQL语句就能查出来刚插入记录对应的自增列的值

    Log Explorer for SQL Server v4.22

    执行Drop Table和Truncate Table命令虽然会被SQLServer记录到日志文件中,但是并不记录被删除的数据。你可以使用LogExplore提供的功能来恢复这些数据。LogExplore提供两种机制来恢复被Drop或者Truncate的数据。 1、...

    经典SQL语句大全

    在SQLServer中分组时:不能以text,ntext,image类型的字段作为分组依据 在selecte统计函数中的字段,不能和普通的字段放在一起; 13、对数据库进行操作: 分离数据库: sp_detach_db; 附加数据库:sp_attach_db 后...

    批量生成表(简).sql

    用sql语句批量生成相同字段的表结构,带有自增键,默认值

Global site tag (gtag.js) - Google Analytics