该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;
每个字段定义必须具有:
字段名称:有效的字段名称。确保将名称缩写为`-chars。这样可以确保您可以在字段名称中使用例如空格字符。
数据类型[长度]:如果字段是CHAR或VARCHAR,则必须指定字段长度。
属性 NULL| NOT NULL:如果NOT NULL指定,则NULL在该字段中存储值的任何尝试都会失败。
在此处查看有关数据类型及其属性的更多信息。
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领域。