`
jakartom
  • 浏览: 43859 次
  • 性别: Icon_minigender_1
  • 来自: 洛阳
最近访客 更多访客>>
社区版块
存档分类
最新评论

mysql自增列语法

 
阅读更多

Mysql:语法:自增列

参考了:http://www.cnblogs.com/jinzhenshui/archive/2009/06/13/1502431.html

  1. 属性:自增列不必是:唯一的、primary、正数、bigint
  2. 属性:auto_increment 是mysql在表列定义中的一个可选属性,和默认值属性冲突。
  3. 属性:必须定义在该列上的索引!
  4. 属性:应用于number类型的列:包括各种整数、浮点数、定点数
  5. 属性:自增列可以和普通的数字类型属性(unsigned、zerofill的)、约束(null、not null、[primary] key、unique [key]、check、foreign key)等组合
  6. 属性:表只能有一个自增列。该列必须具有索引。不能在该列定义defaut值。
  7. 语句影响:insert 对自增列可以显示的指定其值进行插入,如果插入的值>种子值,则种子值会自动更新为=该插入的值;即使你一次性插大批数据也是只返回该批次第一行自增后的值!
  8. 语句影响:delete、update 不会影响种子值
  9. 语句影响:truncate 重置种子值到“1”
  10. 语句影响:select * from table_name where auto_increment_col_name is NULL 获得最后插入的第一行数据;即使你一次性插大批数据也是只返回该批次第一行自增后的值!是ODBC兼容语法
  11. 当 向自增列插入NULL时,自增列自增;当 no_auto_value_on_zero=1(enable)时,可以通过向自增列赋值0来产生自增,不推荐!
  12. 插入值后可以通过 last_insert_id () 返回第一行自增后的值,记住:即使是一批插入多条数据,返回的仍然是第一行的值
  13.  特殊的:对于myisam表,特殊的对于myisam引擎的表,你可以在一个多列索引上的第二列上定义自增列:他将在第一索引列上产生自增,可以理解为:在第一索引列上分组,计算该组上的最大值,+1。该形式下:(分组)自增列的种子值总是取该列上的分组 最大值——受delete、update、insert影响。最大的用途应该是分组排序吧
  14. INSERT INTO StuInfo(StuID,StuName) VALUES (NULL, `字符`)或者
    INSERT INTO StuInfo(StuName) VALUES (`字符`)

分享到:
评论

相关推荐

    与MSSQL对比学习MYSQL的心得(一)–基本语法

    这一期主要是学习MYSQL的基本语法,陆续还会有续期的文章,敬请期待 ...MYSQL的自增列一定也要是主键列,不是主键列会报错,设置种子值要在表的后面设置 代码如下:–设置自增列–sqlserverCREATE TABLE emp 

    mysql数据库的基本操作语法

    auto_increment自增模式,设置自增后在插入数据的时候就不需要给该列插入值了。 4、 foreign key 约束 外键约束是保证一个或两个表之间的参照完整性,外键是构建于一个表的两个字段或是两个表的两个字段之间的参照...

    利用mysql实现的雪花算法案例

    主要介绍了利用mysql实现的雪花算法案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    HeidiSQL(Mysql 管理 图形)

    HeidiSQL 是一款用于简单化你的 MySQL 服务器和数据库管理的图形化界面。该软件允许你浏览你的数据库,管理表,浏览和编辑记录,管理用户权限等等。此外,你可以从文本文件导入数据,运行 SQL查询,在两个数据库之间...

    mysql创建表.pdf

    下面是一个更复杂的例子,它创建了一个名为 "products" 的表,包含 "id" (主键,自增), "name" (唯一,长度为100), "price" (数值类型,默认值为0), "category_id" (外键,引用categories表的id字段) 等字段:

    mysql基础只是总结

    1、自增属性 auto_increment 2、不为空not null | null 3、默认值default 4、主键primary key 5、列值的唯一 unqiue 6、索引 index|key 7、前导0 zerofill 属性可以写在末尾的主键 列值唯一 索引 4、查看...

    MySQL语句之约束条件的设置

    语法形式: ①.定义字段是时主键约束 col_name data_type PRIMARY KEY ②.定义所有字段后设置主键约束 PRIMARY KEY (col_name) 2.设置自增约束: 在向数据表中插入数据时,如果用户希望每条记录的编号自动...

    MySQLDBA运维笔记.pdf

    mysql 总结........................................................................................................................................6 1.1 数据库的种类.......................................

    数据库设计和部署软件BDB 专业版v2.7

    版本更新: <br>1, 增加标识列支持 2, 数据表列表增加排序处理 3, 更正导入数据,未过滤自增列问题 4, 更正数据库安装无法设置空路径问题。 5, 增加精度列,小数位数列显示处理。 6,增加刷新功能...

    数据库相关的知识点!

    语法 constraint fk_dep foreign key(关联列名) references 被关联表(被关联列) on delete cascade 同步删除 on update cascade 同步更新 二、Mysql基本介绍 操作文件夹(库): 增加一个库:create database db1 ...

    sql总结.doc

    (2)Mysql中搜索引擎Innodb(聚簇索引)和Mysiam(非聚簇索引)都采用B+,oracle也采用B+树实现 注:聚簇索引:一张表只能建立一个聚簇索引,以主键建立索引。聚簇索引包括主键索引和二级索引(二级索引是在对非主键...

    SQL培训第一期

    2.2 Oracle与Mysql差异 2.2.1 Group by 2.2.1.1 Oracle select后面出现的列,如果没有使用集合函数,必须出现在group by 中。 select sno,sname,sum(grade) from student group by sno,sname; //合法写法 select...

    xutils:java基本工具类

    如果是单表,那一般我们还可以用mysql的自增来搞定。但是到了分库分表的时候,这个就不能用了。这个模块主要就是用来解决分布式连续id生成。mix模块说明Cache模块实现了一套本地缓存。concurrent模块对JDK自带的任务...

    南阳理工学院PHP编程讲义.rar

    5.4.7 自增(自减)运算符··87 5.4.8 字符串连接运算符······88 5.4.9 运算符的优先顺序和结合规则······ 89 第6 章PHP 的基本控制语句···· 90 6.1 表达式····90 6.1.1 简单表达式··90...

    javaSE代码实例

    3.2 自增自减运算 27 3.3 关系运算 28 3.3.1 等于/不等于运算 28 3.3.2 比较大小运算 29 3.4 逻辑运算 30 3.4.1 “与”运算 30 3.4.2 “或”运算 31 3.4.3 “非”运算 32 3.5 三元运算符 32 3.6 ...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例033 使用while与自增运算符循环遍历 数组 43 实例034 使用for循环输出杨辉三角 43 实例035 使用嵌套循环在控制台上输出 九九乘法表 44 实例036 用while循环计算1+1/2!+1/3!…1/20! 45 实例037 for循环输出空心的...

    Java学习笔记-个人整理的

    {1.1}基本语法}{17}{section.1.1} {1.2}数字表达方式}{17}{section.1.2} {1.3}补码}{19}{section.1.3} {1.3.1}总结}{23}{subsection.1.3.1} {1.4}数据类型}{23}{section.1.4} {1.4.1}整数与浮点数}{23}{...

Global site tag (gtag.js) - Google Analytics