列属性又称之为字段属性
在mysql中一共有6个属性:null,默认值(default),列描述(comment),主键(primary key),唯一键(unique key)和自动增长

修改数据库字符集:字符集和校对集
alter database 数据库名字 charset=字符集

null属性
1. 如果对应的值为YES表示该字段可以为null
mysql的记录长度为65535个字节,如果一个表中有字段允许为null,那么系统就会设计保留一个字节来
存储null,最终有效存储长度为65534个字节

自动增长:auto_increment
自动增长有一个步长值,这个值递增,可以进行show create table 表名;查看自增长的现阶段值
也可以修改这个现阶段值:
#alter table 表名 auto_increment=值;
但是这个值不能比现有自增长字段对应的最大值小

删除自增长:
#alter table 表名 modify id int;
切记不要再次增加primary key
增加自增长:
#alter table 表名 modify id int auto_increment;

查看自增长初始变量
show variables like 'auto_increment%';
mysql> show variables like 'auto_increment%';
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| auto_increment_increment | 1 | 步长-- 每次增加1
| auto_increment_offset | 1 | 初始值 -- 从1开始
+--------------------------+-------+
2 rows in set, 1 warning (0.01 sec)

自增长细节问题
1. 一张表只有一个自增长,自增长会上升到表选项中
2. 如果数据插入中没有触发自增长(给定了数据),那么自增长不会表现
1. 假设一个表自增长到了7,我插入一个新值为9,那么下次自增长的值就是10
3. 自增长在修改的时候,值可以较大,但是不能比当前已有的自增长字段的值小

唯一键:unique key 用来保证对应的字段中的数据唯一的
主键也可以用来保存字段数据唯一性,但是一张表只能有一个主键
1. 唯一键在一张表中可以有多个
2. 唯一键允许字段数据为null,null可以有多个(null不参与比较)
创建唯一键:
1. 直接在表字段之后增加唯一键标识符:unique [key]
2. 在所有字段之后使用 unique key (字段列表)
3. 在创建表之后增加唯一键
#alter table 表名 add unique key(字段列表);
查看唯一键
#desc 表名;
删除唯一键:
在查看创建表语句时候,会看到域主键不同的一点,多出一个名字
系统会为唯一键自动创建一个名字(默认是字段名)
#alter table 表名 drop index 唯一键名字;

复合唯一键
唯一键与主键一样可以使用多个字段来共同保证唯一性;
一般主键都是单一字段(逻辑主键),而其他需要唯一性的内容都是有唯一键来处理

最新文章

  1. 手机web如何实现多平台分享
  2. C#进阶系列——WebApi 路由机制剖析:你准备好了吗?
  3. UML类图常见关系总结
  4. C语言基础知识--位运算
  5. poj2186 Popular Cows --- 强连通
  6. cocos2d-x 3.0 cocos run Couldn't find the gcc toolchain.
  7. 201521123084 《Java程序设计》第14周学习总结
  8. 一个JavaScript触发器插件,可通过指定频次、指定时间内触发指定的处理函数
  9. 论python3下“多态”与“继承”中坑
  10. SpringMVC运行原理
  11. 爬虫之Selenium 动态渲染页面爬取
  12. SharePoint 2010 在同意匿名訪问的站点中隐藏登陆链接
  13. Charles 抓包工具绿化过程记录
  14. python try except else finally
  15. ssm 整合(方案二 maven)
  16. web前端不可错过的开发工具–Adobe Brackets
  17. if __name__ == '__main__的理解
  18. java 性能优化 字符串过滤实战
  19. SpringBoot 6.SpringBoot使用 Log4j2 实现日志输出
  20. linux学习笔记-2.常用命令

热门文章

  1. 面试刷题30:SpringBean的生命周期?
  2. 用pymysql和Flask搭建后端,响应前端POST和GET请求
  3. ML-Agents(四)GridWorld
  4. [vijos1304]回文数<模拟>
  5. Axure RP闪退问题
  6. Golang 实现 Redis(4): AOF 持久化与AOF重写
  7. 面试刷题32:你对tomcat做了哪些性能调优?
  8. stm32:实现呼吸灯
  9. .NET Core项目部署到Linux(Centos7)(五)Centos 7安装.NET Core环境
  10. Taro Next H5 跨框架组件库实践