mysql列属性auto(mysql笔记四)
2014-02-28 21:18
435 查看
![](http://images.cnitblog.com/i/523143/201402/282052164343686.png)
常见的的是一个字段不为null存在默认值
没值得时候才去找默认值,可以插入一个null到 可以为null的行里
主键:可以唯一标识某条记录的字段或者字段的集合
主键设置
主键不可为null,声明时自动设置为not null
字段上设置 字段名 primary key
定义完字段后 再定义(适用于字段集合)
![](http://images.cnitblog.com/i/523143/201402/282054578069220.png)
要求每个表都应该有主键
自动增长
为每条记录提供一个唯一标识,每次插入记录时,字段的值加1 ,使用auto_increment
需要是整型,还需要索引(两者为必须条件)
插入数据时,插入null或者不插入
![](http://images.cnitblog.com/i/523143/201402/282057152039095.png)
![](http://images.cnitblog.com/i/523143/201402/282057578749698.png)
自动增长初始值默认为1
通过修改表选项设置初始值
Alter table auto auto_increment 10;
![](http://images.cnitblog.com/i/523143/201402/282059077763722.png)
![](http://images.cnitblog.com/i/523143/201402/282059556785256.png)
但是初始值应该比当前表记录中的最大值大
![](http://images.cnitblog.com/i/523143/201402/282100594222962.png)
![](http://images.cnitblog.com/i/523143/201402/282101409176106.png)
还是按照最近一次设置的初始值
![](http://images.cnitblog.com/i/523143/201402/282102350957689.png)
![](http://images.cnitblog.com/i/523143/201402/282103197579636.png)
![](http://images.cnitblog.com/i/523143/201402/282104236067842.png)
![](http://images.cnitblog.com/i/523143/201402/282106106704050.png)
可以手动插入自动增长列的值,必须值与表中已有的不冲突
![](http://images.cnitblog.com/i/523143/201402/282107095127693.png)
![](http://images.cnitblog.com/i/523143/201402/282107562517471.png)
![](http://images.cnitblog.com/i/523143/201402/282108302927339.png)
![](http://images.cnitblog.com/i/523143/201402/282109028495422.png)
如果手动插入的比表中已有的最大值大,再插入时以新插入的较大值为基点
是否可以更新该列
![](http://images.cnitblog.com/i/523143/201402/282110401273437.png)
![](http://images.cnitblog.com/i/523143/201402/282111110141273.png)
更新时注意,小的id改大后,其位置也往后调
小测试:自动增长设置为20,数据表中已经存在大于20的数据,删除大于20的数据后,再插入数据,id为多少?
在创建表时设置自动增长默认值
![](http://images.cnitblog.com/i/523143/201402/282112323226248.png)
![](http://images.cnitblog.com/i/523143/201402/282112569231495.png)
![](http://images.cnitblog.com/i/523143/201402/282114038827787.png)
![](http://images.cnitblog.com/i/523143/201402/282114372027498.png)
![](http://images.cnitblog.com/i/523143/201402/282115056728162.png)
![](http://images.cnitblog.com/i/523143/201402/282115365894242.png)
![](http://images.cnitblog.com/i/523143/201402/282116083187438.png)
![](http://images.cnitblog.com/i/523143/201402/282116395173832.png)
相关文章推荐
- mysql修改密码 导入导出
- MySQL批量SQL插入性能优化
- MySQL批量SQL插入性能优化
- mysql表结构导出
- mysql数据库优化总结
- mysql杂记
- 解决.net连接mysql乱码
- mysql基本操作
- MySQL 日期数据类型、时间类型使用总结
- MySQL数据库Windows下命令行基本操作
- mysql update 四种情况
- mysql数据库字符集的设置
- mysql数据库字符集的设置
- MySql按周,按月,按日分组统计数据
- java 使用mysql 的 blob 存储 protobuf 数据 的读写操作核心代码
- mysql中文乱码问题解决方法
- MySQL索引类型
- mysql 源码cmake安装
- MySQL 存储过程 触发器 函数 入门
- MySQL CAST与CONVERT 函数的用法