📅  最后修改于: 2023-12-03 15:03:06.085000             🧑  作者: Mango
在 MySQL 中,创建表是数据库管理系统的核心任务之一。表是存储数据的一种结构,每个表包含多个列(字段),每个列包含一个特定的数据类型。本文将介绍如何使用 SQL 语句创建 MySQL 表。
以下是 MySQL 创建表的基本语法:
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
column3 datatype,
.....
);
其中,CREATE TABLE
是创建表的关键字,table_name
是新表的名称,括号中的内容是表中的各个列及其数据类型。每个列需要按照“列名 数据类型”(column_name datatype)的格式来定义,并用逗号分隔。数据类型用于限制每个列所能包含的数据类型。例如:
CREATE TABLE employees (
id INT,
name VARCHAR(255),
age INT,
salary FLOAT
);
除数据类型之外,每个列还可以具有其他属性,如下所示:
PRIMARY KEY
- 指示列为主键,用于唯一标识每个行。AUTO_INCREMENT
- 指示列应自动递增,用于每次插入新行时生成唯一值。NOT NULL
- 指示列不允许为空值。UNIQUE
- 指示该列中的每个值都是唯一的。DEFAULT
- 指示在插入新行时未提供该值时要使用的默认值。例如:
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(50) UNIQUE,
password VARCHAR(50) NOT NULL,
email VARCHAR(255) DEFAULT 'example@example.com'
);
在此示例中,id
列是一个指定为主键的 INT
值,username
列具有唯一约束,因此该列中的每个值都必须是唯一的。password
列必须包含非空值,否则将无法插入新行。email
列具有默认值,因此如果插入新行时未提供该值,则使用 example@example.com
作为默认值。
除了列属性之外,可以向表添加各种约束。常见的约束类型包括:
PRIMARY KEY
- 用于指定表中的主键列FOREIGN KEY
- 用于指定与其他表的关联列。它指定该列是其他表中列的外键,因此,如果它的值在其他表中不存在,则无法插入新行。UNIQUE
- 用于确保列中的每个值都是唯一的。CHECK
- 用于检查列中的值是否符合特定的条件。例如:
CREATE TABLE orders (
id INT PRIMARY KEY AUTO_INCREMENT,
customer_id INT,
order_date DATE,
amount FLOAT,
FOREIGN KEY (customer_id) REFERENCES customers(id)
);
在此示例中,orders
表包含一个外键 customer_id
,该外键指向另一个表中的 id
列。这样,只有具有匹配值的行才可以插入到 orders
表中。由于 id
列已指定为 PRIMARY KEY,因此每个行都具有唯一的 id
值。
MySQL 创建表是管理数据库的基本任务之一。创建表需要使用 SQL 语句,您可以使用基本语法来定义每个表的列和数据类型。除了基本语法之外,还可以添加约束来确保数据的完整性和一致性。以上是 MySQL 创建表的一些基本信息,您可以使用此信息来创建自己的 MySQL 表。
参考资料: