11.7 从表中删除列
Last updated
Was this helpful?
Last updated
Was this helpful?
在本教程中,我们将向您展示如何使用MySQL DROP COLUMN
语句从表中删除列。
在某些情况下,要从表中删除一个或多个列。 在这种情况下,可以使用如下:
下面让我们更详细地学习上面的语法:
首先,在ALTER TABLE
子句之后,指定将要删除的列的表。
其次,将列的名称放在DROP COLUMN
子句之后。
请注意,关键字COLUMN
是可选的,因此可以使用更短语句书写形式,如下:
要同时从表中删除多个列,请使用以下语法:
在从表中删除列之前,应该要记住一些重要的事情:
从表中删除列会使所有数据库对象(如,,等)依赖于列无效。 例如,您可能有一个引用列的存储过程。 删除列时,存储过程将变为无效。 要修复它,必须手动更改存储过程的代码。
取决于已删除列的其他应用程序的代码也必须更改,这需要时间和精力。
从大型表中删除列可能会影响数据库的性能。
首先,为了演示创建一个名为posts
的表。
第二,假设要删除excerpt
列,请使用ALTER TABLE
语句如下:
第三,要同时删除created_at
和updated_at
列,请使用以下语句:
MySQL删除一列是外键示例
首先,创建一个名为categories
的表:
第二,将categories_id
列添加到posts
表中。
第三,将category_id
列引用categories
表的id
列作为外键。
第四,从posts
表中删除category_id
列。
MySQL发出错误消息:
为避免此错误,必须删除外键约束才能删除该列。
在本教程中,我们向您展示了如何使用MySQL DROP COLUMN
语句从表中删除一个或多个列。
如果您删除作为的列,MySQL将发出错误。下面我们来一步步演示这个想法。