MySQL 基本表格创建

示例

该CREATE TABLE语句用于在MySQL数据库中创建表。

CREATE TABLE Person (
    `PersonID`      INTEGER NOT NULL PRIMARY KEY,
    `LastName`      VARCHAR(80),
    `FirstName`     VARCHAR(80),
    `Address`       TEXT,
    `City`          VARCHAR(100)
) Engine=InnoDB;

每个字段定义必须具有:

  1. 字段名称:有效的字段名称。确保将名称缩写为`-chars。这样可以确保您可以在字段名称中使用例如空格字符。

  2. 数据类型[长度]:如果字段是CHAR或VARCHAR,则必须指定字段长度。

  3. 属性  NULL| NOT NULL:如果NOT NULL指定,则NULL在该字段中存储值的任何尝试都会失败。

  4. 在此处查看有关数据类型及其属性的更多信息。

Engine=...是用于指定表的存储引擎的可选参数。如果未指定存储引擎,则将使用服务器的默认表存储引擎(通常是InnoDB或MyISAM)创建表。

设置默认值

此外,在合理的情况下,您可以使用DEFAULT以下命令为每个字段设置默认值:

CREATE TABLE Address (
    `AddressID`   INTEGER NOT NULL PRIMARY KEY,
    `Street`      VARCHAR(80),
    `City`        VARCHAR(80),
    `Country`     VARCHAR(80) DEFAULT "United States",
    `Active`      BOOLEAN DEFAULT 1,
) Engine=InnoDB;

如果在插入过程中未Street指定no ,则将NULL在检索该字段时使用。如果Country在插入时未指定no ,则默认为“美国”。

您可以为所有列类型设置默认值以外BLOB,TEXT,GEOMETRY,和JSON领域。