一.identity的基本用法

  1.identity的含义:

    identity表示该字段的值会自动更新,通常情况下,不允许直接修改identity修饰的字段,否则编译会报错

  2.基本语法

    列名  数据类型  identity(m,n) 约束

    identity(m,n)中的m表示起始编号,n表示每次增加的值

    如果m和n都没有指定,默认为identity(1,1)

    m和n要么都指定,要么都不指定,不能只写一个

  3.实例演示

--创建自增列
create table classmate
(
    ID int identity primary key,
    Name ) not null
)
--向含有自增列的表中插入一行记录
insert into classmate values ('张俭')
insert into classmate values('宋亚楠')
select * from classmate

指定m,n的值:

--指定m,n的值创建自增列
create table classmate2
(
    ID ,) primary key,
    Name ) not null
)
insert into classmate2 values ('赵雷')
insert into classmate2 values('岳云鹏')
select * from classmate2

 

  4.删除一条记录接着插入

--指定m,n的值创建自增列
create table classmate2
(
    ID ,) primary key,
    Name ) not null
)
insert into classmate2 values ('赵雷')
insert into classmate2 values('岳云鹏')
select * from classmate2
;
insert into classmate2 values('郭德纲')

  可以看到,删除一条记录后在增加,自增列从被删除的记录行的值之后递增 

二.重新设置identity字段的值

  1.基础语法

    dbcc checkident(表名,ressed,n);

  2.实例

--修改identity字段的初始值
create table deyunshe
(
    ID int identity primary key,
    Name ) not null
)
insert into deyunshe values('郭德纲')
insert into deyunshe values('于谦')

);
insert into deyunshe values('岳云鹏');

三.向identity字段插入值

  一般情况下,identity(自增)字段不允许手动插入值,但也可通过以下方法,进行手动插入

  

--identity字段手动插入值
create table deyunshe2
(
    ID int identity primary key,
    Name ) not null
)
insert into deyunshe2 values('郭德纲');
insert into deyunshe2 values('于谦');
insert into deyunshe2 values('岳云鹏');
set identity_insert deyunshe2 ON;
,'孙越');
set identity_insert deyunshe2 off;
insert into deyunshe2 values('张云雷');

注意:插入数据时必须得指定identity修饰的字段的名字

Sql Server数据库之identity(自增)的更多相关文章

  1. SQL server数据库的链接以及增删改查的操作

    1.添加引用using System.Data;using System.Data.SqlData;2.建立于数据库的连接,建议将它做成一个方法,方便多次利用.string sqlconnection ...

  2. SQL Server数据库表重置自增主键号(通常是指ID)

    执行 DBCC CHECKIDENT ('table_name', NORESEED) 以确定列中的当前最大值 然后使用 DBCC CHECKIDENT ('table_name', RESEED,n ...

  3. SQL Server数据库自增字段正确的插入值的描述

    我们今天主要向大家讲述的是SQL Server数据库之向SQL Server自增字段正确的插入值的实际操作步骤,在一般的情况下,我们不能向 SQL Server 数据库自增字段中插入值,如果非要这么干 ...

  4. 详解连接SQL Server数据库的方法,并使用Statement接口实现对数据库的增删改操作

    总结一下,连接SQL Server数据库需要以下几个步骤: 1. 导入驱动Jar包:sqljdbc.jar 2. 加载并注册驱动程序 3. 设置连接路径 4. 加载并注册驱动 5. 连接数据库 6. ...

  5. python连接sql server数据库实现增删改查

    简述 python连接微软的sql server数据库用的第三方模块叫做pymssql(document:http://www.pymssql.org/en/stable/index.html).在官 ...

  6. 5、SQL Server数据库、T-SQL

    SQL Server数据库基础 一.安装SQL Server数据库 setup.exe->安装->全新SQL Server独立安装或向现有安装添加功能->输入序列号->下一步- ...

  7. SQL Server - 数据库初识

      在互联网笔试中,常遇到数据库的问题,遂来简单总结,注意,以 Sql Server 数据库为例. 数据库 数据库系统,Database System,由数据库和数据库管理系统组成. 数据库,Data ...

  8. 转:SQL SERVER数据库中实现快速的数据提取和数据分页

    探讨如何在有着1000万条数据的MS SQL SERVER数据库中实现快速的数据提取和数据分页.以下代码说明了我们实例中数据库的“红头文件”一表的部分数据结构: CREATE TABLE [dbo]. ...

  9. 利用PowerDesigner绘制PDM生成SQL Server数据库

    PowerDesigner是个很强大的建模工具,可以利用它绘制各种图形,本文利用该工具绘制PDM,进而生成SQL Server数据库. 比如绘制一个简单的学生选课.教师授课管理系统的PDM: pk表示 ...

随机推荐

  1. Python学习之路基础篇--02Python基础+小作业

    1 变量 变量就是将一些运算的中间结果暂存到内存中,以便后续代码调用.必须由数字,字母,下划线任意组合,且不能数字开头.不能是python中的关键字,如['and', 'as', 'assert', ...

  2. springboot笔记1(转载于puresmile)

    构建微服务:Spring boot 入门篇 什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框 ...

  3. #电脑磁盘分区#新买的电脑一般只有C盘或者C盘和D盘,怎么加多几个盘呢

    新买的电脑一般只有C盘或者C盘和D盘,怎么加多几个盘呢 鼠标右键点击桌面我的电脑选择管理 进入计算机管理.选择磁盘管理 若桌面没有我的电脑,可按win+x键,在快捷菜单栏中点击磁盘管理 通过以上两种w ...

  4. Web服务器之Nginx详解(操作部分)

    大纲 一.前言 二.Nginx 安装与配置 三.Nginx 配置文件详解 四.Nginx 命令参数 五.配置Nginx提供Web服务 六.配置Nginx的虚拟主机 七.配置Nginx的用户认证 八.配 ...

  5. windows下python虚拟环境virtualenv安装和使用

    前面介绍了python在ubuntu16.04环境下,python的虚拟环境virtualenv的安装,下面介绍在windows环境下的安装和使用. 环境信息 操作系统:windows10 pytho ...

  6. 远程桌面连接问题,ping服务器ip无法连接主机。

    今天是礼拜一,上班的第一天去连公司的服务器,远程桌面竟然登录不上. 试了一下同事的电脑,也是一样的情况无法连接到远程计算机.这下可把我急坏了. 试了很多方法,也重新启动了服务器,重启后同事的win10 ...

  7. python基础-闭包

    def bibao(): li = [] n = [1] def inner(): li.append(n[0]) n[0] +=1 print(li) return inner b = bibao( ...

  8. ubuntu-docker入门到放弃(七)Dockerfile简介

    一.dockerfile基本结构 最简单的理解就是dockerfile实际上是一些命令的堆叠,有点像最基础的shell脚本,没有if 没有for,就是串行的一堆命令. 一般而言,dockerfile分 ...

  9. 理解OpenShift(3):网络之 SDN

    理解OpenShift(1):网络之 Router 和 Route 理解OpenShift(2):网络之 DNS(域名服务) 理解OpenShift(3):网络之 SDN 理解OpenShift(4) ...

  10. centos7.6+samba+设置可读可写不可删权限

    samba原文 https://www.cnblogs.com/muscleape/p/6385583.html 设置可读可写不可删权限原文: https://blog.51cto.com/guanh ...