zoukankan      html  css  js  c++  java
  • 获取数据库表的序列值

    sqlserver:

     identify 字段 select IDENT_CURRENT('tablename')+1

    insert into table xxx

    select @@identity

    oracle:

    SEQ_STATUS.currval

    将sqlserver中的自动增长序列,初始化为某一值!的详细页面。

      DBCC   CHECKIDENT   ('table_name',   RESEED,   new_reseed_value

      DBCC   CHECKIDENT   ('table_name',   RESEED)。  
      例如:  
      有表city  
      ID name type  
      1 1 a  
      2 2 b  
      3 3 c  
      4 1 a  
      5 2 b  
      6 3 c  
      7 1 a  
      8 2 b  
      9 3 c  
      10 1 a  
      11 2 b  
      12 3 c  
      此时当前identity最大值与ID最大值一样,都为12.  
     现在删除后面一部分数据,city变为  
      ID name type  
      1 1 a  
      2 2 b  
      3 3 c  
      4 1 a  
      5 2 b  
      此时当前identity最大值与ID最大值I   一样,ID列最大值为5,identity还是为12.此时要调整过来,将identity值调整为5..具体操作如下:  
      运行DBCC   CHECKIDENT   ('city',   RESEED,   1),再运行DBCC   CHECKIDENT   ('table_name',   RESEED)将其重值。

     要想直接手工插入值到表中identity字段,需要打开该表的identity_insert选项。
    Set identity_insert 表名 on/off

    Set identity_insert customer on  新增记录必须手工插入id值

    Set identity_insert customer off 新增记录不需要插入ID值

  • 相关阅读:
    数学之美
    作为一个程序员,你知道每天自己在做什么吗
    搭建ssm框架log4j日志
    webpack实践——DLLPlugin 和 DLLReferencePlugin的使用
    一些实用的技巧
    详解Vue 开发模式下跨域问题
    vue resource 携带cookie请求 vue cookie 跨域
    解决vue中element组件样式修改无效
    ES6 Promise 异步操作
    js 字符串操作函数
  • 原文地址:https://www.cnblogs.com/lljinz/p/2038704.html
Copyright © 2011-2022 走看看