创建表#
语法#
CREATE TABLE tablename( column_name datatype [NULL | NOT NULL] [CONSTRAINTS] [DEFAULT value], column_name datatype [NULL | NOT NULL] [CONSTRAINTS] [DEFAULT value], ... )
说明
- column_name: 表名
- datatype: 数据类型
- [NULL | NOT NULL]:可选,是否非空
- [CONSTRAINTS]:可选,约束描述
- [DEFAULT value]:默认值,可以设置具体值,也可以引用DBMS内置的函数,如
now(),current_date()
复杂用法#
更复杂用法参考:MySQL5.7 Reference - create table syntax
练习题#
1. 创建一张 User 表,满足以下条件#
| 列名 | 类型 | 是否空 | 默认值 |
|---|---|---|---|
| id | 数字 | 非空,主键 | 自增数字 |
| name | 字符串 | 非空 | - |
| created_at | 时间 | 非空 | 当前时间 |
# 如果存在 User 表,先删除
DROP TABLE IF EXISTS User;
CREATE TABLE User (
`id` int(10) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`name` char(50) NOT NULL,
`created_at` timestamp NULL DEFAULT NOW()
);