MySQL CREATE TABLE 语句

MySQL CREATE TABLE 语句

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

语法

CREATE TABLE table_name (
    column1 datatype,
    column2 datatype,
    column3 datatype,
   ....
);

column 参数指定表中列的名称。

datatype 参数指定列可以容纳的数据的类型(例如 varcharintegerdate 等)。

提示:有关可用数据类型的概述,请参阅我们的完整数据类型参考

MySQL CREATE TABLE 实例

下例创建一个名为 "Persons" 的表,其中包含五列:PersonID、LastName、FirstName、Address 和 City:

实例

CREATE TABLE Persons (
    PersonID int,
    LastName varchar(255),
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255)
);

PersonID 列的类型为 int,将容纳整数。

LastName、FirstName、Address 和 City 列的类型为 varchar,将容纳字符,这些字段的最大长度为 255 个字符。

现在,空的 "Persons" 表将如下所示:

PersonID LastName FirstName Address City
         

提示:现在可以使用 SQL INSERT INTO 语句向空的 "Persons" 表中填充数据。

使用另一个表创建表

也可以使用 CREATE TABLE 创建现有表的副本。

新表将获得相同的列定义。可以选择所有列或特定列。

如果使用现有表创建新表,则新表将使用旧表中的现有值进行填充。

语法

CREATE TABLE new_table_name AS
    SELECT column1, column2,...
    FROM existing_table_name
    WHERE ....;

以下 SQL 创建一个名为 "TestTables" 的新表(它是 "Customers" 表的副本):

实例

CREATE TABLE TestTable AS
SELECT customername, contactname
FROM customers;