mysql中的列_mysql中的列属性

一、NULL

定义方式:NULL(默认)  NOT NULL

二、comment

用来描述字段,会根据创建语句保存,可用show create table 表名; 查看

create table my_tab(

str varchar(10) not null comment '字符串',

num int unsigned not null comment '数字'

);

三、default

用来设置默认值。

create table my_tab(

str varchar(10) not null,

num int unsigned default 10;  --  默认值为10

);

使用方法:

insert into my_tab (str) values ('abc');  -- num会自动设为10

insert into my_tab values ('abc', default); -- 用默认值插入num字段

四、primary key  -- 主键

1. 主键特点

① 唯一性,一张表只能有一个字段设为主键

② 主键不允许为NULL

2. 增加主键方式

① 在创建表时,在字段后面跟关键字primary key设置

create table my_tab(

id int primary key,

name varchar(10)

)charset utf8;

② 在创建表时,在所有字段后使用primary key(字段列表)设置复合主键

create table my_tab2(

id int,

number int,

name varchar(10),

primary key(id, number, ...)

)charset utf8;

③ 在已创建好的表中追加主键

alter table my_tab3 modify id int primary key;

alter table my_tab3 add primary key(id, ...);

3. 主键更新与删除

主键无法更新,若想更新主键,只能删除后重新添加。

alter table my_tab3 drop primary key;

五、auto_increment  --  自动增长

1. 自动增长通常与主键搭配使用, 字段设置自动增长后,不给值,或给默认值或NULL的时候,会自动触发,

如果给了值,则当前自增失效,从下一次开始以当前最大值开始自增。

设置为自增长的字段必须是一个索引,且必须是一个整型类型,一张表只能有一个字段被设为auto_increment.

2. 使用方式,在字段后面跟auto_increment关键字

create table my_tab4(

id int auto_increment,

name varchar(10)

)charset utf8;

3. 修改自增长

alter table my_tab4 auto_increment = 值;  -- 如果改的值比当前最大值小,则修改无效

4. 查看系统自增长变量

show variables like 'auto_increment%';

可以修改系统变量的值, 但是没什么意义

set auto_increment_increment = 值;  -- 修改自增步长

5. 删除自增长

alter table my_tab1 modify id int;  -- 修改字段,使其没有auto_increment即可。

六、unique key -- 唯一键

1. 唯一键允许自动为NULL,且可以有多个。如果当前表中没有主键,并有唯一键设为NOT NULL时,会显示第一个NOT NULL的唯一键为PRI,但他本质是唯一键。

2. 增加唯一键

① 在创建时在字段后面跟关键字unique/unique key

create table my_unique1(

id int unique,

num int unique key,

name varchar(10)

)charset utf8;

② 在创建时在所有字段后面增加 unique key(字段列表)  -- 复合唯一键MUL

create table my_unique2(

id int,

num int,

name varchar(10)

unique key(id, num)

)charset utf8;

③ 在表创建之后增加唯一键

alter table my_unique3 add unique key(字段列表);-- unique key 或 unique 都可以

alter table my_unique3 modify 字段名 数据类型 unique;

3. 更新与删除唯一键

和主键一样,先删除后添加,因为唯一键可以有多个,所以不删除直接添加也可以。

alter table my_unique drop index 索引名;   -- 索引名的默认值为字段名

七、索引

索引的作用: 提高查询效率、约束数据的有效性

1. 主键索引   primary key

2. 唯一键索引  unique key

3. 全文索引   textfill  index

4. 普通索引   index

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值