列属性又称之为字段属性
在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 唯一键名字;

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

Mysql列属性的更多相关文章

  1. 09、MySQL—列属性

    列属性又称之为字段属性,在mysql中一共有6个属性:null,默认值,列描述,主键,唯一键和自动增长 1.Null属性 NULL属性:代表字段为空 如果对应的值为YES表示该字段可以为NULL 注意 ...

  2. 学习笔记:MySQL列属性

    列属性 a)         null|not null 缺省值是null,也就是允许为空,如果是not null而又没有给该字段赋值的话,系统会首先查询该字段有没有默认值 b)         de ...

  3. 面试官问我,为什么老司机建议MySQL列属性尽量用 NOT NULL ?

    本文阅读时间大约6分钟. 其实写这篇文章,也是来自一个知识星球读者的提问,他在二面的过程中被问到了,由于他简历中写道有 MySQL 调优经验,但这个问题没有回答好,二面被刷了. 其实我们刚学习 C 语 ...

  4. mysql列属性操作(转载)

    1.mysql中修改字段长度: ALTER TABLE tb_article MODIFY COLUMN NAME VARCHAR(50); 这里的tb_article为表名,NAME为字段名,50为 ...

  5. mysql列属性auto(mysql笔记四)

    常见的的是一个字段不为null存在默认值 没值得时候才去找默认值,可以插入一个null到 可以为null的行里 主键:可以唯一标识某条记录的字段或者字段的集合 主键设置 主键不可为null,声明时自动 ...

  6. mysql中列属性

    mysql列属性包括:NULL .default.comment.primary key.unique key 一.NULL定义方式:NULL(默认) NOT NULL 空属性有2个值,mysql数据 ...

  7. MySQL (二)-- 数据类型(列类型)、数值类型、 小数类型、 时间日期类型、 字符串类型 、 MySQL记录长度、列属性

    1 数据类型(列类型) 所谓的数据类型:对数据进行统一的分类,从系统的角度出发是为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中将数据类型分成了三大类: 2 数值类型 数值类型数据:都 ...

  8. mysql 增加列,修改列名、列属性,删除列语句

    mysql增加列,修改列名.列属性,删除列语句 mysql修改表名,列名,列类型,添加表列,删除表列     alter table test rename test1; --修改表名 alter t ...

  9. MySQL之字段数据类型和列属性

    数据类型: 对数据进行统一的分类,从系统的角度出发,为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中将数据类型分成了三大类:数值类型.字符串类型.时间日期类型. 数值型: 数值型数据: ...

随机推荐

  1. java 环境变量配置与第一个程序运行

    从开始下载jdk,到运行出java第一个程序 ,花了5天时间 ,不过我相信万事开头难 ,以后会越来越好的 ,加油! jdk的下载: 在oracle官网上即可下载,jdk安装包,下载完以后运行安装 ,路 ...

  2. springboot系列(三)配置文件详解

    目录 properties 文件 1.语法 2.优先级 3.自定义数据配置 4.获取自定义数据配置 1.通过prefix获取 yml文件 1.语法 2.优先级 3.自定义数据配置. 4.获取自定义数据 ...

  3. C#是什么?

    C# 是一个现代的.通用的.面向对象的编程语言,它是由微软(Microsoft)开发的,由 Ecma 和 ISO 核准认可的. C# 是由 Anders Hejlsberg 和他的团队在 .Net 框 ...

  4. cxk不会二进制 (贪心)

    cxk不会二进制 Description 最近cxk迷上了二进制,他很菜,有道简单的题不会做,挂在这里求大佬做一下: 以二进制形式给出两个数字:x,y.令s = x + y * 2 ^ k.输出能使 ...

  5. 基于Quartz编写一个可复用的分布式调度任务管理WebUI组件

    前提 创业小团队,无论选择任何方案,都优先考虑节省成本.关于分布式定时调度框架,成熟的候选方案有XXL-JOB.Easy Scheduler.Light Task Scheduler和Elastic ...

  6. 总结一下python的学习路线

    1.安装pycharm community编辑器和python 3.7.2解释器的博客链接参考:https://blog.csdn.net/fangye945a/article/details/878 ...

  7. 《综合》MMM集群

    <综合>MMM集群 部署集群基础环境 MySQL-MMM架构部署 MySQL-MMM架构使用 1 部署集群基础环境 1.1 问题 本案例要求为MySQL集群准备基础环境,完成以下任务操作: ...

  8. USB2.0/YTPE-C音频芯片DP108T集成晶振替代DP108 CM108

    DP108T是一种高集成度的USB/YTPE-C音频芯片.嵌入了所有必要的模拟模块,包括双DAC 和音频驱动.麦克风增益器 .PLL.稳压器和 USB 收发器.此外,音频音量可以很容易地通过专门的 H ...

  9. json === dict

    import requests import json ''' json.loads(json_str) json字符串转换成字典 json.dumps(dict) 字典转换成json字符串 ''' ...

  10. "为文本添加下划线"组件:<u> —— 快应用组件库H-UI

     <import name="u" src="../Common/ui/h-ui/text/c_tag_underline"></impor ...