📜  在 MYSQL 中添加创建和更新的列(1)

📅  最后修改于: 2023-12-03 15:23:13.727000             🧑  作者: Mango

在 MYSQL 中添加创建和更新的列

在 MySQL 中,可以通过 ALTER TABLE 语句添加、修改、删除表的列和约束。ALTER TABLE 语句允许在现有的表中添加新的列、更改列的属性,如数据类型和列的限制条件等。

以下是如何使用 ALTER TABLE 语句来添加和更新表的列。

添加新列

要添加新列,可以使用 ALTER TABLE 语句,后跟 ADD COLUMN 子句,然后列出要添加的列的名称、数据类型和限制条件。

例如,要添加一个名为 age 的新列,它的数据类型为 INT,可以使用以下命令:

ALTER TABLE table_name ADD COLUMN age INT;

如果需要添加多个列,可以使用逗号分隔它们:

ALTER TABLE table_name ADD COLUMN age INT, birthdate DATE;

注意,如果要在一个非空的表中添加列,需要指定一个默认值。否则,将会抛出错误。

修改现有列

要修改现有列,可以使用 ALTER TABLE 语句,后跟 MODIFY COLUMN 子句,然后指定要更改的列名称、新的数据类型和限制条件。

例如,要将 age 列的数据类型修改为 BIGINT,可以使用以下命令:

ALTER TABLE table_name MODIFY COLUMN age BIGINT;

如果需要删除列,可以使用 DROP COLUMN 子句:

ALTER TABLE table_name DROP COLUMN age;
更新现有列

要更新现有列的属性,可以使用 ALTER TABLE 语句,后跟 CHANGE COLUMN 子句,然后指定要更改的列的名称、新的列名、新的数据类型和限制条件。

例如,要将 age 列的名称更改为 years,数据类型更改为 FLOAT,可以使用以下命令:

ALTER TABLE table_name CHANGE COLUMN age years FLOAT;

这将会修改 age 列的名称为 years,并更改它的数据类型为 FLOAT。

总而言之,ALTER TABLE 语句是 MySQL 中一个强大的工具,在添加、删除和修改表的列和约束时非常有用。上述操作详见以下代码片段:

-- 添加新列
ALTER TABLE table_name ADD COLUMN age INT;
ALTER TABLE table_name ADD COLUMN age INT, birthdate DATE;

-- 修改现有列
ALTER TABLE table_name MODIFY COLUMN age BIGINT;
ALTER TABLE table_name DROP COLUMN age;

-- 更新现有列
ALTER TABLE table_name CHANGE COLUMN age years FLOAT;