创建表#

语法#

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()
);