在 SQL 中,主键和外键是用来建立表之间的关系的。
1. 主键(Primary Key)是用来唯一标识表中的每一条记录的一列或一组列。主键必须唯一且非空,一个表只能有一个主键。可以在创建表时通过 PRIMARY KEY 关键字来指定主键,也可以在已创建的表中使用 ALTER TABLE 语句来添加主键。
示例:
```
CREATE TABLE students (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT
);
```
2. 外键(Foreign Key)是用来建立两个表之间的关系的一列或一组列。外键定义了一个表中的数据与另一个表中的数据的关联关系。外键的值必须是对应表中主键的值或者为空。可以在创建表时通过 FOREIGN KEY 关键字来指定外键,也可以在已创建的表中使用 ALTER TABLE 语句来添加外键。
示例:
```
CREATE TABLE orders (
order_id INT PRIMARY KEY,
customer_id INT,
order_date DATE,
FOREIGN KEY (customer_id) REFERENCES customers(customer_id)
);
```
在上述示例中,orders 表中的 customer_id 列是一个外键,它参考了 customers 表中的 customer_id 列,建立了订单和顾客之间的关联关系。
需要注意的是,主键和外键的数据类型必须一致,且外键引用的主键必须存在。