MySQL 入门教程:CREATE TABLE 语句在数据库中创建新表
如何使用 MySQL CREATE TABLE
语句在数据库中创建新表。
MySQL CREATE TABLE 语法
您可以使用 MySQL 命令CREATE TABLE
在数据库中创建新表。命令CREATE TABLE
是MySQL中最复杂的命令之一。
下面以简单的形式解释一下create Table
命令的语法:
CREATE TABLE [IF NOT EXISTS] table_name(
column_list
) engine=table_type;
SQL我们来仔细看看它的语法:
- 首先输入
在子句 CREATE TABLE
之后创建的表的名称。表名在数据库中必须是唯一的。IF NOT EXISTS
是命令的可选部分,用于检查创建的表是否已存在于数据库中。在这种情况下,MySQL 将忽略整个命令并且不会创建任何新表。强烈建议在每个CREATE TABLE
语句中使用IF NOT EXISTS
,以避免在创建已存在的新表时出现错误。 - 其次,在
column_list
部分输入表格列表。字段列以逗号分隔 (,
)。我们将在下一节中更详细地向您展示如何定义列(字段)。 - 第三,必须在
engine
子句中为表指定存储引擎。可以使用任何存储模块,例如:InnoDB、MyISAM、HEAP❙❙‾❙❙❙‾‸、EX 、CSV 、 存档、合并、联合 或 ND❓ 或 ND❓ 如果没有显式声明存储引擎,MySQL 将默认为InnoDB。
注意:从MySQL 5.5开始,InnoDB已成为默认存储。 InnoDB表类型带来了关系数据库管理系统的许多好处,例如ACID事务、引用完整性和灾难恢复。在以前的版本中,MySQL 使用 MyISAM 作为默认存储库。
要在 CREATE TABLE
命令中定义表的列,请使用以下语法:
column_name data_type[size] [NOT NULL|NULL] [DEFAULT value]
[AUTO_INCREMENT]
SQL 上述语法中最重要的组成部分是: lum_co 规范列名称。每列都有特定的数据类型和大小,例如:VARCHAR(255)
。
NOT NULL
或 NULL
指示列是否接受值NULL
。值 DEFAULT
用于指定列的默认值。 AUTO_INCRMENT
表示每当向表中插入新行时,列值会自动递增。每个表只有一列AUTO_INCRMENT
。 如果要将特定表列设置为主键,请使用以下语法:
PRIMARY KEY (col1,col2,...)
SQLMySQL CREATE TABLE 命令示例
我们将练习下面的示例来创建新表命名为 tasks
,如下图:
这个 CREATE TABLE
可以用来创建这个表❙‶❙❙‶‶sk 下面
CREATE TABLE IF NOT EXISTS tasks (
task_id INT(11) NOT NULL AUTO_INCREMENT,
subject VARCHAR(45) DEFAULT NULL,
start_date DATE DEFAULT NULL,
end_date DATE DEFAULT NULL,
description VARCHAR(200) DEFAULT NULL,
PRIMARY KEY (task_id)
) ENGINE=InnoDB;
SQL 在在本教程中,您学习了如何使用 MySQL 命令CREATE TABLE
在数据库中创建新表。
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。