zoukankan      html  css  js  c++  java
  • SQL server-自增主键

    1.CREATE   TABLE   表名(   
      字段名   [int]   IDENTITY   (1,   1)   NOT   NULL   ,    //--(seed = 1,increment = 1) 從1開始,每次遞增1 
      ...   
      )   

    2.在SQL   SERVER中,所有整数类型的列都可以定义成自增长列,叫作“标识”,   
      它通过设定“标识种子”和“标识递增量”来实现功能。   
      列如:   
        
              列         类型               标识       标识种子       标识递增量   
            ----       -------       ----       -------       ----------   
            test         tinyint         √               1                     1   
        
          当你插入一行后,会从1开始自动的赋值。(1、2、3、4……255)   
          
      方法为:   
          1、选中表;   
          2、右击鼠标,设计;   
          3、选中列(整数类型)   
          4、设定标识为“是“(默认为“否”)、标识种子和标识递增量(一般为1)。 

    3.给定指定值自增

      1).当数据库表字段的列设置为自增列后,不能人为改变自增列的值

      2).但有时候在导数据或公用配置过程中,有些基础设置的值是不变的或者是固定,这样在新起项目或导数据时会出现问题。

      怎么才能修改自增列的值,让导入的数据按我们指定的值存放呢,  

      3).下面介绍一种简单的数据设置方法:

      IDENTITY_INSERT

      参数:ON(开始) OFF(结束)

      注:此方法只可插入新值,仍然不能修改原有Identity列的值

      示例:

    SET IDENTITY_Insert TestTABLE ON     
    insert TestTABLE(IDENTITYID,Code,XX,XX)  
    VALUES(43,'','xx','xx');      
    SET IDENTITY_INSERT TestTABLE OFF 

    说明: 

    TestTable:数据库表名

    IDENTITYID:自增列字段

    这样我们就可以轻松进行数据导入,或写入指定值的数据了

    4、取自增最新值

    SELECT IDENT_CURRENT('tablename') + IDENT_INCR('tablename') as newid

    IDENT_CURRENT( 'table_name' ) 返回为指定的表或视图生成的最后一个标识值。所生成的最后一个标识值可以针对任何会话和任何作用域。


    SCOPE_IDENTITY 返回插入到同一作用域中的标识列内的最后一个标识值。一个范围是一个模块:存储过程、触发器、函数或批处理。因此,如果两个语句处于同一个存储过程、函数或批处理中,则它们位于相同的作用域中。


    IDENT_INCR ( 'table_or_view' ) 返回增量值(返回形式为 numeric (@@MAXPRECISION,0)),该值是在带有标识列的表或视图中创建标识列时指定的。

  • 相关阅读:
    Linux 使用 github 常用命令
    配置使用 git 秘钥连接 GitHub
    Python 使用 face_recognition 人脸识别
    face_recognition 基础接口
    pycharm 安装激活操作
    Python 人工智能之人脸识别 face_recognition 模块安装
    Linux pip 命令无法使用问题
    vue 起步
    vue.JS 介绍
    AngularJS 简介
  • 原文地址:https://www.cnblogs.com/michellexiaoqi/p/8031294.html
Copyright © 2011-2022 走看看