数据完整性
数据完整性=数据的精确性+数据的可靠性
数据完整性主要分为三类:实体完整性、域完整性、引用完整性。
实体完整性是指保证表中所有的行唯一。
域完整性是指数据库表中的列必须满足某种特定的数据类型或约束。其中约束又包括取值范围、精度等规定。
引用完整性是指保证主关键字(被引用表)和外部关键字(引用表)之间的参照关系。它涉及两个或两个以上表数据的一致性维护。
使用约束实现数据完整性
在数据表上添加约束
语法:ALTER TABLE 表名 ADD CONSTRAINT 约束名 约束关键字 具体的约束说明
约束名的取名推荐采用:约束类型_约束字段
主键(Primary Key)约束:如 PK_stuNo
唯一(Unique )约束:如 UQ_stuID
外键(Foreign Key)约束:如 FK_stuNo
设置唯一约束
语法:ALTER TABLE 表名 ADD CONSTRAINT 约束名 UNIQUE(列名)
设置主键约束
语法:ALTER TABLE 表名 ADD CONSTRAINT 约束名 PRIMARY KEY(列名1,列名2,…列名n)
设置外键约束
语法:ALTER TABLE 从表名 ADD CONSTRAINT 约束名 FOREIGN KEY(从表的列名) REFERENCES 主表名(主表的列名)
删除约束
语法:ALTER TABLE 表名 DROP PRIMARY KEY; #删除主键约束
ALTER TABLE 表名 DROP KEY 唯一约束名; #删除唯一约束
ALTER TABLE 表名 DROP FOREIGN KEY 外键约束名; #删除外键约束
DML语言
DML(数据操作语言):用于操作数据库对象中所包含的数据。
DML包括:
INSERT ( 添加数据语句 )
UPDATE ( 更新数据语句 )
DELETE ( 删除数据语句 )
添加数据
添加单行数据
语法:INSERT INTO 表名 [ ( 字段1, 字段2, 字段3, … ) ] VALUES ( 值1, 值2, 值3, …);
添加多行数据
语法:INSERT INTO 表名 [ ( 字段1, 字段2, 字段3, … ) ] VALUES ( 值1, 值2, 值3, …),( 值1, 值2, 值3, …),…;
将查询结果插入到新表中
语法:CREATE TABLE 新表名 ( SELECT 字段1, 字段2, 字段3, … FROM 原表)
修改数据
语法:UPDATE 表名 SET column_name = value [ , column_name2 = value2, …. ] [ WHERE condition ];
删除数据
1:DELETE命令
语法:DELETE FROM 表名 [ WHERE condition ];
2:TRUNCATE TABLE 命令
语法:TRUNCATE TABLE 表名;
SQL语句中的运算符