Mysql中的auto_increment

1.创建

2.使用

  【1】如果不写固定列,则必须要插入该列,可以直接写Null,否则会报错

  【2】可以直接在auto_increment 列上直接插入显式值,并且会改变当前自增值,如下图,插入8之后,后面的自增就会接着往下走

  【3】事后直接修改自增标识值

  【4】建表时设置自增值

3.注意事项

  【1】、被auto_increment修饰的列为标识列,可以自动增长。一张表中只能有一个标识列。

  【2】、auto_increment只能用来修饰数值类型的列,并且该类型的列列只能为key类型的列,key类型的列有:primary key 、unique、key、foreign key

1.创建

create table test1011(
id int primary key auto_increment ,
num int
)

2.使用

  【1】如果不写固定列,则必须要插入该列,可以直接写Null,否则会报错

    

     

  【2】可以直接在auto_increment 列上直接插入显式值,并且会改变当前自增值,如下图,插入8之后,后面的自增就会接着往下走

    

  问:这个时候,如果再插入一个ID为6的数据行,后续再插入id为null的数据会怎么样?

  答:这个时候mysql会自动找该表中id列最大的值,然后顺序+1作为新的自增ID值。

  【3】事后直接修改自增标识值

    alter table test1011 auto_increment=100;

  【4】建表时设置自增值

    create table test1012(id int primary key auto_increment,num int ) auto_increment=100;

3.注意事项

  【1】、被auto_increment修饰的列为标识列,可以自动增长。一张表中只能有一个标识列。

  【2】、auto_increment只能用来修饰数值类型的列,并且该类型的列列只能为key类型的列,key类型的列有:primary key 、unique、key、foreign key

Mysql中的auto_increment的更多相关文章

  1. 更改mysql中当前auto_increment的值的方法

    最近给自己网站更改mysql中当前auto_increment的值 如果在mysql中一个表test中的ID字段设为auto_increment插入两条记录后ID=2,这时删除1条记录,再插入一条变成 ...

  2. 修改mysql中的auto_increment

    在mysql数据库中,如何修改自增值auto_increment呢?请看下面的语句: 1.sql语句 ALTER TABLE table_name AUTO_INCREMENT=1 2截断表,trun ...

  3. MySQL 中有关auto_increment及auto_increment_offset方面的介绍

    数据库查询中,涉及到auto_increment中的参数变量一共有两个 [root@localhost][(none)]> show variables like 'auto_inc%'; +- ...

  4. MySQL中auto_increment的基本特性

    创建数据表时,经常会出现auto_increment这个词,下面就来了解一下它吧. MySQL的中AUTO_INCREMENT类型的属性用于为一个表中记录自动生成ID功能,可在一定程度上代替Oracl ...

  5. Mysql中自增字段(AUTO_INCREMENT)的一些常识

    Mysql中自增字段(AUTO_INCREMENT)的一些常识: http://chengxuyuan.naxieshir.com/fenlei/2/p/151.html

  6. mysql学习笔记(二:中的auto_increment 理解

    1.auto_increment 理解1 auto_increment是用于主键自动增长的,从1开始增长,当你把第一条记录删除时,再插入第二跳数据时,主键值是2,不是1. 例如: create tab ...

  7. [原创]MYSQL中利用外键实现级联删除和更新

    MySQL中利用外键实现级联删除.更新 MySQL支持外键的存储引擎只有InnoDB,在创建外键的时候,要求父表必须有对应的索引,子表在创建外键的时候也会自动创建对应的索引.在创建索引的时候,可以指定 ...

  8. 【转】MySql中的函数

    原文:http://www.cnblogs.com/kissdodog/p/4168721.html MySQL数据库提供了很多函数包括: 数学函数: 字符串函数: 日期和时间函数: 条件判断函数: ...

  9. MySQL中索引和优化的用法总结

    1.什么是数据库中的索引?索引有什么作用? 引入索引的目的是为了加快查询速度.如果数据量很大,大的查询要从硬盘加载数据到内存当中. 2.InnoDB中的索引原理是怎么样的? InnoDB是Mysql的 ...

随机推荐

  1. opengl的矩阵理解

    原文链接:http://blog.csdn.net/byhuang/article/details/1476199 矩阵真的是一个很神奇的数学工具, 虽然单纯从数学上看, 它并没有什么特别的意义, 但 ...

  2. SQL Server 查看数据库在数据缓存(data cache)中占用的空间大小

    use master go select * from sys.dm_os_buffer_descriptors go --查看数据库在数据缓存(data cache)中占用的空间大小 --由于每个数 ...

  3. 搭建Hadoop伪分布式时遇到的各种错

    1.本地连接远端用户没有权限 2.执行时提示,保存三分数据,但是只有一个节点是活的 问题1解决办法:在hdfs-site.xml文件中添加一下配置(是否在HDFS中开启权限检查) <proper ...

  4. 怎样设置easyui中datagrid行高

    $('#face_table2').datagrid({            title: '信息',            iconCls: 'icon-save',   url: 'callro ...

  5. CSS清除浮动常用方法小结

    1.使用空标签清除浮动.我用了很久的一种方法,空标签可以是div标签,也可以是P标签.我习惯用<P>,够简短,也有很多人用<hr>,只是需要另外为其清除边框,但理论上可以是任何 ...

  6. nginx重写规则配置

    https://segmentfault.com/a/1190000002797606 location正则写法 一个示例: location = / { # 精确匹配 / ,主机名后面不能带任何字符 ...

  7. 详解Git工作区、暂存区、历史记录区以及git reset、git revert、git checkout等撤销命令的区别

    http://josh-persistence.iteye.com/blog/2215214

  8. C#的字符串优化-String.Intern、IsInterned

    https://www.jianshu.com/p/af6eb8d3d4bf 首先看一段程序: using System; class Program { static void Main(strin ...

  9. day24<多线程>

    多线程(多线程的引入) 多线程(多线程并行和并发的区别) 多线程(Java程序运行原理和JVM的启动是多线程的吗) 多线程(多线程程序实现的方式1) 多线程(多线程程序实现的方式2) 多线程(实现Ru ...

  10. jquery 获取当前时间加180天

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...