创建表的SQL语句的基本格式如下:
```sql
CREATE TABLE table_name (
column_name1 data_type [NOT NULL | NULL] [constraints],
column_name2 data_type [NOT NULL | NULL] [constraints],
...
);
```
`table_name`:新表的名称。
`column_name1, column_name2, ...`:新表的列名。
`data_type`:列的数据类型,例如 `INT`, `VARCHAR(n)`, `DATE` 等。
`NOT NULL`:指示列不能包含空值。
`NULL`:指示列可以包含空值。
`constraints`:对列施加的约束,如 `UNIQUE`, `PRIMARY KEY`, `FOREIGN KEY` 等。
示例
1. 创建一个名为 `customers` 的表,包含 `customer_id`, `first_name`, `last_name`, 和 `email` 四列:
```sql
CREATE TABLE customers (
customer_id INT NOT NULL AUTO_INCREMENT,
first_name VARCHAR(50) NOT NULL,
last_name VARCHAR(50) NOT NULL,
email VARCHAR(100) UNIQUE,
PRIMARY KEY (customer_id)
);
```
2. 创建一个名为 `employees` 的表,包含 `employee_id`, `first_name`, `last_name`, `department`, 和 `salary` 五列,其中 `employee_id` 为主键:
```sql
CREATE TABLE employees (
employee_id INT PRIMARY KEY,
first_name VARCHAR(50) NOT NULL,
last_name VARCHAR(50) NOT NULL,
department VARCHAR(50),
salary DECIMAL(10, 2)
);
```
3. 创建一个名为 `products` 的表,包含 `product_id`, `product_name`, `category`, 和 `price` 四列,其中 `product_id` 为自增主键:
```sql
CREATE TABLE products (
product_id INT AUTO_INCREMENT PRIMARY KEY,
product_name VARCHAR(100) NOT NULL,
category VARCHAR(50),
price DECIMAL(10, 2) NOT NULL
);
```
注意事项
表名和列名:
必须唯一,并且遵循数据库命名规则。
数据类型:
根据实际需求和数据存储需求选择合适的数据类型。
约束:
可以为列添加 `NOT NULL`, `UNIQUE`, `PRIMARY KEY` 等约束。
默认值:
可以为列指定默认值,例如 `DEFAULT 1` 或 `DEFAULT '未知'`。
存储引擎:
在创建表时,也可以指定存储引擎,例如 `ENGINE=InnoDB`。
通过以上步骤和示例,你可以根据实际需求创建合适的表结构。