SQLServer“标识列”的相关问题

SQLServer“标识列”的相关问题

 

    下面我们看一张表:想一想在数据库SQLServer中我们如何能更简便的向这张表格中添加数据呢?

 

   

   

 

    仔细观察此表我们不难发现,ID字段的这列数据的添充是有规律可循的,它是一个等比自增的数列,向数据表中添加这样的数据有没有简单的方法呢?

    这就谈到了SQLServer标识列的问题。我查询一些资料做了总结,在此和大家一起分享受与交流。

 

 

(1)标识列的定义

   

    标识列,(通常也称为“标识字段”或者称为“自动增长字段”)是一行记录区别其它记录的标识,为的也是能唯一地检索出该行记录。

   

    注意:一个表中只能有一个标识列(标识字段),一般是把“主键”设为标识列。

    

(2)如何把一个字段设为标识列?

 

    下面我以SQLServer2008为例来看一下它的设置步骤:

    如:右键单击——表Person3,左键单击——“设计”属性,然后选中要设为标识列的字段,在“标识规范”中,将字段的“是标识”设为“”,最后关闭此窗口,保存即可。

 

 

 

 

 

    从上图中“标识规范”中看到,标识列中还有个“标识种子”和“标识增量”,主要是为了避免重复值的出现,便于查询。

 

    1. 标识种子 是开始的数是多少,默认为1。

    2. 标识增量(也称为增长种子)是每增加一条数据增加的值是多少,默认为1。

    3. 标识列不容许插入值,是自动给值的,强制给会报错。

    identity(1,1) 那么该列标识种子是1,增长种子也是1。第一个参数是标实种子,第二个参数是增长种子。

             

    注意:在设置标识列之前,要在—‘工具’菜单中找到—‘选项’—在选项中—把‘阻止保存要求重新建表的更改’的“√”去掉,否则SQLServer要修改表的标识列没法修改。

 

 

             

 

 

(3)设置标识列的好处

     

    标识列是自动增长的,从种子开始,依次递增,递增量位自己设置的。比如:种子是1,增长量为1,那么标识列的值是:1、2、3、4、5……依次类推。所以你写Insert语句的时候,不用写标识列的值。

    也就是说:标识列实现了字段自增,解决的是并发的问题,不用开发人员控制自增,SQLServer会自动分配标识列的值,如果两个人同时往数据库里面插数据时,将会产生唯一的自动增加为标识.

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值