MySQL数据库约束
非空约束(NOT NULL)
1.含义:加上非空约束的字段,在添加数据时,该字段不能写入null值
2.基本语法:
create table 表名称(
字段 数据类型 NOT NULL,
...
);
3.创建表完后,添加非空约束
ALTER TABLE 表名称 MODIFY 字段 数据类型 NOT NULL;
4.删除字段的非空约束
ALTER TABLE 表名称 MODIFY 字段 数据类型;
唯一约束(UNIQUE)
1.含义:加上唯一约束的字段,在添加数据时,该字段不能在该表中重复出现。
2.基本语法:
create table 表名称(
字段 数据类型 UNIQUE,
...
);
3.创建表完后,添加唯一约束
ALTER TABLE 表名称 MODIFY 字段 数据类型 UNIQUE;
4.删除字段的唯一约束
ALTER TABLE 表名称 DROP INDEX 字段;
主键约束(PRIMARY KEY)
1.含义:加上主键约束的字段,在添加数据时,该字段作为代表该表的标志性字段。该表与其他表联系时,一般都是使用这个字段。主键约束的字段既有非空约束,也有唯一约束。
2.基本语法:
create table 表名称(
字段 数据类型 PRIMARY KEY,
...
);
3.设置主键自动增长
create table 表名称(
字段 数据类型 PRIMARY KEY AUTO_INCREMENT,
...
);
4.创建表完后,添加主键约束
ALTER TABLE 表名称 MODIFY 字段 数据类型 PRIMARY KEY;
5.删除字段的主键约束
ALTER TABLE 表名称 DROP PRIMARY KEY;
外键约束(FOREIGN KEY)
1.含义:加上外键约束的字段,该字段都是其他表的主键,从而让表与表之间产生联系,从而保证数据的正确性。
2.基本语法:
create table 表名称(
外键列 数据类型,
CONSTRAINT 外键名称 FOREIGN KEY(外键列名) REFERENCES 主表名称 主表主键列名;
...
);
3. 创建表之后,添加外键
ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段名称) REFERENCES 主表名称(主表列名称);
4. 级联操作
1. 添加级联操作
语法:ALTER TABLE 表名 ADD CONSTRAINT 外键名称
FOREIGN KEY (外键字段名称) REFERENCES 主表名称(主表列名称) ON UPDATE CASCADE ON DELETE CASCADE ;
2. 分类:
1. 级联更新:ON UPDATE CASCADE
2. 级联删除:ON DELETE CASCADE
数据库备份和还原
1.备份数据库命令行语法:
mysqldump -u用户名 -p密码 要备份的数据库 > 备份到的系统路径
2.还原数据库:
1)创建数据库
2)使用数据
3)执行备份。SQL语句:source 文件路径