Module 02 · Introduction to Relational Databases and Tables
CREATE TABLE StatementCREATE TABLE 语句详解
欢迎学习 CREATE TABLE 语句。
学习目标
完成本视频的学习后,您将能够解释如何使用实体名称和属性来创建关系数据库表。
CREATE语句:数据定义语言 (DDL)
CREATE 是最常用的 数据定义语言 (DDL) 语句 之一,用于在数据库中创建实体或表。
CREATE TABLE** 语法结构**
CREATE TABLE 的基本语法如下所示:
SQL
CREATE TABLE table_name (
column1_name DATATYPE [optional_values],
column2_name DATATYPE [optional_values],
...
);
- 起始: 使用
CREATE TABLE,后跟您想要创建的表名。 - 主体: 语句的其余部分包含在一对圆括号
()内。 - 列定义: 圆括号内的每一行指定一个列名,后跟其数据类型,以及一些可选的附加值(例如约束)。
- 分隔符: 每个属性或列定义之间使用逗号
,分隔。
简单示例:加拿大省份表
假设我们要创建一个用于存储加拿大省份信息的表:
SQL
CREATE TABLE provinces (
id CHAR(2) PRIMARY KEY NOT NULL,
name VARCHAR(24)
);
| 列名 | 数据类型 | 长度/约束 | 描述 |
|---|---|---|---|
id |
CHAR(2) |
PRIMARY KEY NOT NULL |
存储 2 个字母的省份缩写代码,如 AB、BC 等。 |
name |
VARCHAR(24) |
- | 存储省份的全名,如 ALBERTA、BRITISH COLUMBIA 等。 |
数据类型说明:
CHAR** (n):** 固定长度的字符字符串,本例中长度为 2。VARCHAR** (n):** 可变长度的字符字符串,本例中最大长度可达 24 个字符。
执行此语句后,将在数据库中创建一个包含 2 个列的表。

复杂示例:图书馆数据库 AUTHOR 表
我们基于图书馆数据库的 AUTHOR** 实体**来创建一个更复杂的表。
- 表名:
AUTHOR - 属性 (列):
AUTHOR_ID,FIRSTNAME,LASTNAME等。
我们将 AUTHOR_ID** 属性指定为主键 (Primary Key)**,以确保不会出现重复值。

💡 回顾: 关系表的主键唯一标识表中的每个元组(行)。
创建AUTHOR表的命令
SQL
CREATE TABLE author (
author_id CHAR(2) PRIMARY KEY NOT NULL,
lastname VARCHAR(15) NOT NULL,
firstname VARCHAR(15) NOT NULL,
email VARCHAR(40),
city VARCHAR(15),
country CHAR(2)
);
| 列名 | 数据类型 | 约束 | 作用 |
|---|---|---|---|
author_id |
CHAR(2) |
PRIMARY KEY NOT NULL |
确保该值唯一且非空,防止重复值。 |
lastname |
VARCHAR(15) |
NOT NULL |
确保该字段不能为空(作者必须有姓氏)。 |
firstname |
VARCHAR(15) |
NOT NULL |
确保该字段不能为空(作者必须有名字)。 |
email |
VARCHAR(40) |
- | 存储电子邮件(可选)。 |
city |
VARCHAR(15) |
- | 存储城市(可选)。 |
country |
CHAR(2) |
- | 存储国家/地区代码(可选)。 |
总结要点
CREATE是用于在数据库中创建实体或表的 DDL 语句。CREATE TABLE语句包含表中属性(列)的定义,包括:- 列的名称
- 列的数据类型
- 所需的其他可选值,例如
PRIMARY KEY约束。