创建表的sql语句 mysql/sqlserver
时间: 2023-09-05 18:01:48 浏览: 134
创建表的SQL语句可以根据具体需求和字段定义来编写。以MySQL为例,以下是一个示例的创建表的SQL语句:
```sql
CREATE TABLE IF NOT EXISTS `users` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(50) NOT NULL,
`age` INT(3) NOT NULL,
`email` VARCHAR(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
```
上述的SQL语句创建了一个名为`users`的表,包含了四个字段:`id`、`name`、`age`和`email`。其中`id`是主键,并且使用自增的方式进行编号。`name`和`email`字段分别是最大长度为50和100的字符串,`age`字段为整数类型。
另外,还可以在创建表的SQL语句中添加一些约束,如唯一性约束或外键约束等。以下是一个示例的带有约束的创建表的SQL语句:
```sql
CREATE TABLE IF NOT EXISTS `orders` (
`order_id` INT(11) NOT NULL AUTO_INCREMENT,
`user_id` INT(11) NOT NULL,
`product_id` INT(11) NOT NULL,
`quantity` INT(3) NOT NULL,
PRIMARY KEY (`order_id`),
UNIQUE KEY `unique_order` (`user_id`, `product_id`),
FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE,
FOREIGN KEY (`product_id`) REFERENCES `products` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
```
上述的SQL语句创建了一个名为`orders`的表,包含了四个字段:`order_id`、`user_id`、`product_id`和`quantity`。其中`order_id`是主键,并且使用自增的方式进行编号。`user_id`和`product_id`字段组合成了一个唯一性约束,即一个用户在购买同一个商品时只能有一个订单。另外,`user_id`和`product_id`字段分别作为外键,分别引用了`users`和`products`表中的对应字段。同时,添加了`ON DELETE CASCADE`的外键约束,表示在删除对应表中的记录时,该表中的相关记录也会被自动删除。
阅读全文