数据库约束实践: PRIMARY KEY与FOREIGN KEY

需积分: 0 0 下载量 32 浏览量 更新于2024-07-01 收藏 1.51MB PDF 举报
"数据库管理和约束应用教程" 在数据库设计中,约束是确保数据完整性的重要机制,它们规范了数据的存储和操作,防止了不合法或不正确的数据输入。本章节主要探讨了如何在MySQL中创建和应用约束,以提高数据的一致性和准确性。以下是关于约束的一些关键知识点: 1. PRIMARY KEY约束:主键是数据库表中一个或一组字段,用于唯一标识每条记录。在`emp2`和`dept2`表中,`id`字段被定义为`PRIMARY KEY`,这确保了每个员工和部门都有唯一的标识。通过`ALTER TABLE`语句,我们可以向已存在的表中添加主键约束,如`ALTERTABLEemp2MODIFYCOLUMNidINTPRIMARYKEY;`和`ALTERTABLEdept2MODIFYCOLUMNidINTPRIMARYKEY;`。 2. FOREIGN KEY约束:外键是用来建立两个表之间的关联,通常是一个表的字段引用另一个表的主键。在本例中,`emp2`表新增了一个`dept_id`字段,它是一个外键,关联到`dept2`表的`id`字段,表示员工所在的部门。外键约束确保了`emp2`表中的`dept_id`值必须存在于`dept2`表的`id`字段中。添加外键约束的SQL语句是`ALTERTABLEemp2ADDCONSTRAINTfk_emp2_deptidFOREIGNKEY(dept_id)REFERENCESdept2(id);`。 3. 数据类型:理解各种数据类型是非常重要的。例如,在书籍管理的例子中,`id`是整数类型(INT),`name`和`authors`是可变长度的字符串(VARCHAR),`price`是浮点数(FLOAT),`pubdate`是年份(YEAR),`note`是可变长度的注释(VARCHAR),而`num`是库存数量(INT)。每个字段的数据类型都根据其包含信息的性质来选择。 4. 字段属性:数据库字段有多种属性,如是否为主键(primary key)、是否为外键(foreign key)、是否允许为空(NULL)、是否具有唯一性(unique)以及是否自动递增(auto-increment)。在示例中,`id`字段具有主键、非空、唯一和自增属性,而其他字段则根据需求有不同的属性设置。 5. 数据库操作:创建数据库、切换数据库、创建表和修改表结构是数据库管理的基础操作。例如,`CREATE DATABASE`用于创建数据库,`USE`用于选择要使用的数据库,`CREATE TABLE`用于创建新表,`ALTER TABLE`用于修改已有表的结构。 6. 实践练习:在尚硅谷-宋红康的课程中,提供了基础练习,让学生在实际操作中学习和掌握约束的应用。这些练习包括创建数据库、定义表结构以及添加主键和外键约束,以巩固理论知识。 约束在数据库设计中扮演着至关重要的角色,它们确保了数据的准确性和一致性。理解和熟练应用这些约束可以有效地维护数据库的完整性和稳定性,对于任何IT专业人员来说,都是不可或缺的技能。
2022-08-08 上传