Code前端首页关于Code前端联系我们

MySQL 入门教程:CREATE TABLE 语句在数据库中创建新表

terry 2年前 (2023-09-26) 阅读数 41 #数据库

如何使用 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 子句中为表指定存储引擎。可以使用任何存储模块,例如:InnoDBMyISAMHEAP❙❙‾❙❙❙‾‸、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 NULLNULL 指示列是否接受值NULL。值
  • DEFAULT 用于指定列的默认值。
  • AUTO_INCRMENT 表示每当向表中插入新行时,列值会自动递增。每个表只有一列AUTO_INCRMENT
  • 如果要将特定表列设置为主键,请使用以下语法:

    PRIMARY KEY (col1,col2,...)
    
    SQL

    MySQL 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前端网发表,如需转载,请注明页面地址。

    发表评论:

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

    热门