MySQL基础学习-DDL

创建数据库

create database test1;

查看数据库

show databases;

删除数据库

drop database test1;

1.创建表结构的语句

CREATE TABLE t_student
(
sid int(5),
sname VARCHAR(10)

);

2.修改表结构并添加注释

alter table t_student modify column sname varchar(20) comment ‘学生姓名’;

3.在创建表的时候就添加注释信息

3.1 删除表

drop table t_student;

3.2 添加注释

create table t_student
(
sid int(5) comment ‘学号’,
sname varchar(20) comment ‘姓名’
)comment = ‘用户表’

4. 修改表结构

4.1 添加字段

alter table t_student add age int(3);

4.2 修改字段类型

alter table t_student modify age varchar(20);

alter table t_student modify age int(3);

4.3 修改字段名称

alter table t_student change column age sage int ; – mysql 5;
alter table t_student rename column age to sage ; – mysql 8;

4.4 删除字段

alter table t_student drop column sage;

5.约束

5.1 非空约束

在创建表的时候就添加非空约束

drop table t_student;
create table t_student
(
sid int(5) not null comment ‘学号’,
sname varchar(20) comment ‘姓名’
)comment = ‘用户表’

在创建表后添加非空约束

alter table t_student change sid sid int not null ;

5.2 默认值

drop table t_student;
create table t_student
(
sid int(5) not null comment ‘学号’,
sname varchar(20) comment ‘姓名’,
sage int(3) default 18 comment ‘年龄’
)comment = ‘用户表’;

6.唯一约束

6.1 创建表的时候添加唯一约束;

drop table t_student;
create table t_student
(
sid int(5) unique not null comment ‘学号’,
sname varchar(20) comment ‘姓名’,
sage int(3) default 18 comment ‘年龄’
)comment = ‘用户表’;

6.2 创建表后添加唯一约束 NULL可以重复

alter table t_student add CONSTRAINT unique_name UNIQUE(sname);
alter table t_student add unique(sname);

7. 主键 用于识别一条记录唯一性的字段;

7.1 创建表的时候创建主键

drop table t_student;
create table t_student
(
sid int(5) primary key auto_increment comment ‘学号’,
sname varchar(20) comment ‘姓名’,
sage int(3) default 18 comment ‘年龄’
)comment = ‘用户表’;

7.2 创建表后再创建主键

– 一个表中只能存在一个主键
alter table t_student add constraint pk_t_student_id primary key(sid);
alter table t_student add primary key(sid);

7.3 联合主键

多个字段的组合信息是不能出现重复的

alter table t_student add constraint pk_t_student_id primary key(sid,sname);

alter table t_student add primary key(sid,sname);

8.外键 主表的中外键字段保存的是从表中的主键字段

– 外键就是在主表中可以重复出现,但是它的值是另一个表的主键,外键使两个表相关,外键可约束表的数据的更新,外键和主键表联系,数据类型要统一,长度(存储大小)要统一,在更新数据的时候会保持一致性

create table t_class
(
cid int(5) primary key auto_increment comment’班级编号’,
cname varchar(20) comment’班级名称’
)

– 创建表时就创建外键
drop table t_student;
create table t_student
(
sid int(5) primary key auto_increment comment ‘学号’,
sname varchar(20) comment ‘姓名’,
sage int(3) default 18 comment ‘年龄’,
cid int(5),
CONSTRAINT fk_student_class_id FOREIGN KEY(cid) REFERENCES t_class(cid)
)comment = ‘用户表’;

– 创建表后创建外键
alter table t_student
CONSTRAINT fk_student_class_id FOREIGN KEY(cid) REFERENCES t_class(cid)

– 注意:外键字段的级联关系,如果我们要删除外键对应的主键记录,那么必须要先删除该注解对应的所有的外键记录,否则删除不成功,

– 实际开发中我们对主键的使用比较少。

🧐 微信公众号:搜索《Java高性能架构》
📒原创不易,如果觉得不错请给我一个,三连、收藏、加关注,需要资料的同学可以私聊我!
😉 有问题可以点击下方私信交流 😆
如果我的博客对您有帮助 再次希望大家点赞 👍 收藏 ⭐留言 📝 啦 、感谢大家对我支持,让我有了更多的创作动力,希望我的博客能帮助到你

9. Check 约束

drop table t_student;
create table t_student
(
sid int(5) primary key auto_increment comment ‘学号’,
sname varchar(20) comment ‘姓名’,
sage int(2) default 18 comment ‘年龄’,
CHECK(age>=18 and age<30),
cid int(5),
CONSTRAINT fk_student_class_id FOREIGN KEY(cid) REFERENCES t_class(cid)
)comment = ‘用户表’;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凌风_Java高性能架构

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值