列属性又称之为字段属性
在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. NatApp 外网映射工具

    外网映射工具 在做微信开发或者是对接第三方支付接口时,回调接口可能需要外网访问,这时候开发者在本地测试的时候,需要用到外网测试工具.常用的外网测试工具有natapp.ngrok NatApp简介服务器 ...

  2. BurpSuit工具安装和基本使用方法

    burpsuite是渗透的必备工具,使用它可以进行一些截包分析,修改包数据.暴力破解.扫描等功能,使用最多的场景应该是设置代理拦截数据包分析数据和爆破. JDK工具下载和安装(可选) 运行BurpSu ...

  3. 使用Spring管理数据库事务

    在整个JavaWeb项目开发中,事务是用来开发可靠性网络应用程序的最关键部分.当应用程序与后端资源进行交互时,就会用到事务,这里的后端资源包括数据库.MQ.ERP等.而数据库事务是最常见的类型,而我们 ...

  4. vue3.0+axios 跨域+封装

    封装: 目录结构:src/utils/request.js, 没有就自己建一个 //src/utils/request.jsimport axios from 'axios' import { Mes ...

  5. MATLAB 一维随机变量及其概率分布

    1.两点分布 clc clear a=rand(1,10); for ii=1:10 if a(ii)<0.2 a(ii)=0; else a(ii)=1; end end a x=0的概率为0 ...

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

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

  7. Bootstrap Blazor 组件库

    项目介绍 Blazor 是一个使用 .NET 生成交互式客户端 Web UI 的框架: 使用 C# 代替 JavaScript 来创建丰富的交互式 UI. 共享使用 .NET 编写的服务器端和客户端应 ...

  8. vulnhub~Djinn:2

    这道题挺难的,和Djinn:1相比,正如作者所言,有许多相似的地方.仍然开放着端口 可以看到5个端口开放着,1337是web端口,这里面如djinn1一样,write your wish,但是send ...

  9. FZU - 2204 简单环形dp

    FZU - 2204 简单环形dp 题目链接 n个有标号的球围成一个圈.每个球有两种颜色可以选择黑或白染色.问有多少种方案使得没有出现连续白球7个或连续黑球7个. 输入 第一行有多组数据.第一行T表示 ...

  10. springboot+ehcache 基于注解实现简单缓存demo

    1.加入maven依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactI ...