MySQL中在一个表里同时设置 主键和外键
时间: 2024-09-25 17:04:52 浏览: 64
sql中设置联合主键的具体方法
5星 · 资源好评率100%
在MySQL中,一个表可以同时设置主键和外键,这两个约束通常是关联两个表之间的关键关系。当你需要引用另一个表的数据,并且这个参照关系是唯一的(就像主键那样),你可以这样做:
首先,假设我们有两个表,一个是`orders`表,主键是`order_id`,另一个是`customers`表,主键是`customer_id`。如果`orders`表需要记录每个订单对应的客户ID,这时就可以定义一个外键:
```sql
CREATE TABLE orders (
order_id INT AUTO_INCREMENT,
customer_id INT,
order_date DATE,
PRIMARY KEY (order_id),
FOREIGN KEY (customer_id) REFERENCES customers(customer_id) ON DELETE CASCADE
);
```
在这个例子中,`customer_id`列被设置了为外键,它引用了`customers`表的`customer_id`,`ON DELETE CASCADE`表示当`customers`表的记录被删除时,与此相关的`orders`表记录也将自动删除。
阅读全文