列属性又称之为字段属性
在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. Python第七章-面向对象

    面向对象编程基础 一.面向对象概念 1.1 什么是面向过程 ​ 就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了. ​ 生活中的的例子举例. 1.2 ...

  2. CSS 常用属性之 阴影

    text-shadow 是一个给文字添加阴影的属性 text-shadow: X偏移量,Y偏移量,模糊值,颜色  可以同时设置多个文本阴影,需要用逗号隔开 如果是需要兼容低版本的浏览器 -webkit ...

  3. Spring Boot 邮件发送

    pom文件依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...

  4. [ASP.NET Core MVC] 如何实现运行时动态定义Controller类型?

    昨天有个朋友在微信上问我一个问题:他希望通过动态脚本的形式实现对ASP.NET Core MVC应用的扩展,比如在程序运行过程中上传一段C#脚本将其中定义的Controller类型注册到应用中,问我是 ...

  5. Ubuntu16.04下LAMP环境的安装与配置

    Ubuntu16.04下LAMP环境的安装与配置 最近做个实验需要用到Ubuntu环境的靶场,所以这里介绍下Ubuntu环境下LAMP的安装与配置,话不多说,我们gkd! 1.Apache2的安装 首 ...

  6. CyclicBarrier是如何成为一个"栅栏"的

    CyclicBarrier是一种类似于栅栏的存在,意思就是在栅栏开放之前你都只能被挡在栅栏的一侧,当栅栏移除之后,之前被挡在一侧的多个对象则同时开始动起来. 1. 如何使用CyclicBarrier ...

  7. 个人hexo博客(静态,无后台)搭建

    博客搭建 1.工具安装 安装Node.js,其中包含Node.js和npm(包管理器) 利用npm安装cnpm(淘宝的npm,速度在国内更快) npm install -g cnpm --regist ...

  8. mysql搭建主从复制(一主一从,双主双从)

    主从复制原理 Mysql 中有一个binlog 二进制日志,这个日志会记录下所有修改了的SQL 语句,从服务器把主服务器上的binlog二进制日志在指定的位置开始复制主服务器所进行修改的语句到从服务器 ...

  9. 一个关于HttpClient的轮子

    由于本文较长,需要耐住性子阅读,另外本文中涉及到的知识点较多,想要深入学习某知识点可以参考其他博客或官网资料.本文也非源码分析文章,示例中的源码大多是伪代码和剪辑过的代码示例,由于该轮子为公司内部使用 ...

  10. flask-类视图

    flask-类视图 标准类视图 from flask import Flask, render_template, views, jsonify app = Flask(__name__) class ...