SQL PRIMARY KEY 学习笔记
什么是PRIMARY KEY?
在SQL中,每张表都应该有一个或多个可以唯一标识每个记录的字段。这个字段就被称为“主键”(PRIMARY KEY)。主键也可以用来建立表与表之间的关系。对于同一张表而言,每一条记录的主键都必须是唯一的,且不能为空值。
如何定义PRIMARY KEY?
在创建表时,我们可以在其中一个字段后面加上“PRIMARY KEY”关键字来定义主键。例如:
Copy CodeCREATE TABLE students (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT
);
这里,我们定义了一个名为“students”的表,其中有三个列:id、name和age。其中,id是主键。
注意,不同的数据库系统对主键的定义有所不同。在某些数据库系统中,主键可以跨越多个字段;在其他系统中,主键可以包括空值,虽然这不是通常情况下的最佳实践。
主键的作用
1. 确保数据的唯一性
主键可以确保每个记录都是唯一的,因为它们必须包含唯一的值。例如,在我们的示例“students”表中,id字段是主键,这意味着每个学生都有一个唯一的ID号。
2. 提高数据检索效率
主键还可以帮助提高数据检索效率。在SQL中,如果你知道主键的值,那么你可以通过主键查找数据行的速度会非常快,因为数据库系统会使用主键来建立索引。
示例
假设我们有一个名为“employees”的表,它包含以下字段:id、name、age和department。
Copy CodeCREATE TABLE employees (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT,
department VARCHAR(50)
);
在这个表中,我们将“id”字段定义为主键。这意味着每个员工都有一个唯一的ID号,我们可以使用这个ID号来快速查找和修改员工记录。
例如,如果我们想查找ID为1001的员工的信息,我们可以使用以下SQL语句:
Copy CodeSELECT * FROM employees WHERE id = 1001;
这个查询会只返回ID为1001的员工的信息,而不会返回其他员工的信息。这是因为我们使用了主键来进行查询,这会让查询效率更高。