外键
在实际操作中,将一个表的值放入第二个表来表示关联,所使用的值是第一个表的主键值(包括符合主键值)。此时,第二个表中保存这些值的属性被称为外键(foreign key)
外键的作用:保持数据的一致性和完整性,主要目的是控制存储在外键表中的数据约束。使两张表形成关联,外键只能引用外表中的列的值或使用空值。
子表student
,主表grade
,外键gradeid
ALTER TABLE student
ADD CONSTRAINT FK_gradeid
FOREIGN KEY (gradeid
) REFERENCES grade
(gradeid
)
DML语言
数据操作语言
- INSERT
- UPDATE
- DELETE
INSERT命令
‘INSERT INTO 表名 [(字段1),(字段2),...,(字段n)] VALUES(值1),(值2),...,(值n);‘
字段与值一一对应,不写字段名默认为输入表的所有字段
UPDATE命令
‘UPDATE 表名 SET col_name=value [,col_name=value2,...] [WHERE condition];‘
- col_name表示要更改的数据列
- value为修改后的数据,可为变量
- condition为筛选条件,不设定表示对所有列数据操作
DELETE命令
‘DELETE FROM 表名 [WHERE condition];‘
TRUNCATE命令
作用:用于完全情况表数据,但表结构,索引,约束等不变;
TRUNCATE [TABLE] table_name;
与DELETE的关系
- 相同:都能删除数据,不删除表结构,但TRUNCATE速度更快
- 不同:
- 使用TRUNCATE,table会重新设置AUTO_INCREMENT计数器
- 使用TRUNCATE,table不会对事务有影响