MySQL数据库(三)


# 一、表结构修改(alter)
# 1.修改表名:alter table tb_name rename to new_name;
# 2.修改字段名:alter table tb_name change name new_name data_type;
# 3.修改字段类型:ALTER TABLE tb_name MODIFY field_name data_type;
# int类型转str是可以转的,但str类型转int会报错,转不了
# 4.添加字段:ALTER TABLE tb_name ADD [COLUMN] field_name data_type;
# 5.删除字段:ALTER TABLE tb_name DROP [COLUMN] field_name;


# 二、约束条件
# 约束是一种限制,通过对表中的数据做出限制,来确保表中数据的完整性,唯一性



# 默认约束(default):
# 插入数据的时候,如果没有明确为字段赋值,则自动赋予默认值。在没有设置默认值的情况下,默认值为NULL
# CREATE TABLE tb(
# id int default 值,
# name varchar(20)
# );

# 非空约束(not null):
# 限制一个字段的值不能为空,Insert的时候必须为该字段赋值。空字符不等于NULL
# CREATE TABLE tb(
# id int not null,
# name varchar(20)
# );

# 唯一约束(unique key)
# 限制一个字段的值不重复,该字段的数据不能出现重复的。确保字段中值的唯一
# CREATE TABLE tb(
# id int unique key,
# name varchar(20)
# );

# 主键约束(primary key)
# 通常每张表都需要一个主键来体现唯一性,每张表里面只能有一个主键。主键 = 非空 + 唯一
# CREATE TABLE tb(
# id int primary key,
# name varchar(20)
# );

# 自增长约束(auto_increment)
# 自动编号,和主键组合使用,一个表里面只能有一个自增长。auto_increment 要求用在主键上
# CREATE TABLE tb(
# id int primary key auto_increment,
# name varchar(20)
# );

# 外键约束(foreign key)
# 保持数据的一致性
# 主键连主键:一对一模式,即我有的你一定有, 你没有的, 我绝对没有
# CREATE TABLE a(
# id_a int primary key,
# name varchar(20)
# );

# CREATE TABLE b(
# id_b int primary key,
# name varchar(20),
# foreign key (id_b) references a(id_a)
# );

# 1. B表中的id_b字段,只能添加 id_a中已有的数据。
# 2. A表中id_a 被参照的数据, 不能被修改和删除
# 3. 要删除A表中参照的数据,先要去删除B表中的数据


# 三、表关系



# 一对一:用外键的方式,把两个表的主键关联。用主键加主键的方式来实现


# 一对多:


# 多对多:对于多对多关系,需要创建中间表实现。

猜你喜欢

转载自www.cnblogs.com/nealxyz/p/9624616.html