添加和删除主键和外键的方法
时间: 2023-09-11 16:11:59 浏览: 114
添加主键可以通过以下两种方法实现:
1. 创建表时指定主键约束
在创建表时,可以使用 `PRIMARY KEY` 关键字来指定主键约束,例如:
```
CREATE TABLE users (
id INT NOT NULL PRIMARY KEY,
name VARCHAR(50),
age INT
);
```
上面的语句创建了一个名为 `users` 的表,其中 `id` 列被指定为主键。这意味着该列的值必须是唯一的且不能为空。
2. 修改表结构添加主键约束
可以通过 `ALTER TABLE` 语句修改表结构,添加主键约束,例如:
```
ALTER TABLE users ADD PRIMARY KEY (id);
```
上面的语句添加了一个名为 `PK_users` 的主键约束,该约束包含了 `id` 列。
删除主键可以使用以下两种方法:
1. 在创建表时不指定主键约束
在创建表时,如果不指定主键约束,则该表不会有主键。例如:
```
CREATE TABLE users (
id INT NOT NULL,
name VARCHAR(50),
age INT
);
```
上面的语句创建了一个名为 `users` 的表,其中 `id` 列没有被指定为主键。
2. 修改表结构删除主键约束
可以通过 `ALTER TABLE` 语句修改表结构,删除主键约束,例如:
```
ALTER TABLE users DROP CONSTRAINT PK_users;
```
上面的语句删除了名为 `PK_users` 的主键约束。
添加外键可以通过以下两种方法实现:
1. 创建表时指定外键约束
在创建表时,可以使用 `FOREIGN KEY` 关键字来指定外键约束,例如:
```
CREATE TABLE orders (
id INT NOT NULL PRIMARY KEY,
customer_id INT,
FOREIGN KEY (customer_id) REFERENCES customers(id)
);
```
上面的语句创建了一个名为 `orders` 的表,其中 `customer_id` 列被指定为外键。该外键参照了 `customers` 表中的 `id` 列,表示 `orders` 表中的 `customer_id` 列只能引用 `customers` 表中已经存在的 `id` 值。
2. 修改表结构添加外键约束
可以通过 `ALTER TABLE` 语句修改表结构,添加外键约束,例如:
```
ALTER TABLE orders ADD CONSTRAINT FK_orders_customers FOREIGN KEY (customer_id) REFERENCES customers(id);
```
上面的语句添加了名为 `FK_orders_customers` 的外键约束,该约束参照了 `customers` 表中的 `id` 列。
删除外键可以使用以下两种方法:
1. 在创建表时不指定外键约束
在创建表时,如果不指定外键约束,则该表不会有外键。例如:
```
CREATE TABLE orders (
id INT NOT NULL PRIMARY KEY,
customer_id INT,
...
);
```
上面的语句创建了一个名为 `orders` 的表,其中 `customer_id` 列没有被指定为外键。
2. 修改表结构删除外键约束
可以通过 `ALTER TABLE` 语句修改表结构,删除外键约束,例如:
```
ALTER TABLE orders DROP CONSTRAINT FK_orders_customers;
```
上面的语句删除了名为 `FK_orders_customers` 的外键约束。
阅读全文