mysql数据库约束的使用方法_MySQL数据库约束与列操作

755116d33bf36eb9d8c540a3d0ff6f5a.png

4e975ff4be157aa0094eabbb1d86ca69.png

e7802d8491cfa2e86048419da5ac45c1.png

b840cad6365d18517da22fa73da76119.png

95417fde01ec3bfc7afe7aca3c890317.png

12c733c528a08dcc1f6f4ed36049238a.png

bbe6a4dd64ac2d6e36ee4d011785c204.png

04c73bab7eef437e74ebbed5441d9ea8.png

828a982ea9b33ba5f0b3b36df265a4c3.png

506ee9c2b89c7a03196dd0c028aa72db.png

f25d1ead48205d0b21fb8e938c46e8ae.png

d98c0b92a8cb999375390ef9348c191a.png

56b749bfa71bfc0a02c349aae702b8ae.png

16d9aada5291a47c3d815fcc6ce04888.png

25bb6620d3fbdc4c413db8f38e6288cb.png

d4f07bd50eda5539eeda11eef730c579.png

b4df4e9017257ab8ebb987796bd53cec.png

289312a2713d5b9b18d89248cec32e47.png

81c9c7430b987b7b860e85c08367f93b.png

f308eeb751eb5e0a75a5cf8ade3d2cc4.png

——数据库的约束和列操作

1、show create table province;可以用来展示新创建表格的引擎类型和基本信息内容

2、外键约束主要是为了建立起来父表和子表之间的关系,必须为innoDB的存储引擎,主要有唯一约束,主键约束,外键约束,not null等

3、另外对于父表和子表之间的参照列必须具有相似的属性(数字则相同,字符串则相似),具有外键约束的是字表,参照的父表

4、外键列和参照列必须创建索引,如果不创建,MySQL将要自动创建

5、显示数据表的索引语句:show indexes from tablename\G(表格形式展示)

6、外键约束的参照操作:CASCADE、SET NULL、RESTRIC、NO ACTION等

create table users1(

-> id smallint unsigned primary key auto_increment,

-> username varchar(10) not null,

-> pid smallint unsigned,

-> foreign key(pid) references province(id) on delete cascade);

7、外键约束在操作数目的多少角度上可以划分为列级约束(1个列)和表级约束(多个列)

8、not null 和default约束不存在表级约束,唯一,主键和外键约束既有表及约束,也有列级约束

9、数据表添加列操作语句

alter table users1 add age tinyint unsigned not null default 10;(默认往最后添加)

alter table users1 add password varchar(30) not null after username;(after在某一列之后添加)

alter table users1 add truename varchar(10) not null first;(first在数据表第一列添加)

10、添加多列不能指定添加的位置,只可以添加子最后面

11、数据表删除列语句:

alter table users1 drop truename;(单列删除)

alter table users1 drop id,drop age;(多列删除)

12、添加约束:

alter table users2 add constraint pk_users2_id primary key (id);添加主键约束

alter table users2 add unique(username);添加唯一约束

alter table users2 add foreign key(pid) references province(id);添加外键约束

alter table users2 alter age set default 15;添加默认约束

alter table users2 alter age drop default;删除默认约束

13、删除约束:

alter table users2 drop primary key;删除主键约束

alter table users2 drop index username;删除唯一约束

alter table users2 drop foreign key users2_ibfk_1;删除外键约束使用约束名称即可

alter table users2 drop index pid;删除外键约束需要注意还要删除索引

14、修改列定义(change和modify均可,change更加全面)

(1)修改列的位置前后-modify

alter table users2 modify id smallint unsigned not null first;把某一列放在前面

alter table users2 modify id smallint unsigned not null after username;把某一列放在username列之后

(2)修改列的属性定义,数据类型等-modify

alter table users2 modify id tinyint unsigned not null first;修改列属性定义,数据类型等,从大类型到小类型注意一定要防止数据丢失

(3)修改列名称-change

alter table users2 change pid p_id tinyint unsigned not null;

15.修改数据表的名称:

(1)alter table users2 rename users3;

(2)rename table users3 to users2;

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值