如何从MySQL中的表中删除列

问题描述 投票:409回答:13

给定使用以下表创建的表:

CREATE TABLE tbl_Country
(
  CountryId INT NOT NULL AUTO_INCREMENT,
  IsDeleted bit,
  PRIMARY KEY (CountryId) 
)

如何删除列IsDeleted

mysql ddl alter-table
13个回答
690
投票
ALTER TABLE tbl_Country DROP COLUMN IsDeleted;

Here's一个工作的例子。

请注意,COLUMN关键字是可选的,因为MySQL只接受DROP IsDeleted。另外,要删除多个列,您必须用逗号分隔它们,并为每个列包含DROP

ALTER TABLE tbl_Country
  DROP COLUMN IsDeleted,
  DROP COLUMN CountryName;

这允许你在一个语句中的同一个表上的qazxsw poi,qazxsw poi和qazxsw poi多列。来自DROP

您可以在单个ADD语句中发出多个ALTERMySQL reference manualADDALTER子句,以逗号分隔。这是标准SQL的MySQL扩展,每个DROP语句只允许每个子句中的一个。


6
投票
ALTER

6
投票

如果您正在运行MySQL 5.6,则可以在线执行此操作,允许其他会话在执行操作时读取和写入表:

ALTER TABLE `tbl_Country` DROP COLUMN `column_name`;

6
投票
ALTER TABLE tbl_Country DROP columnName;

0
投票

当我们执行从表中删除列的操作时,它会更改表的结构。为了执行这种操作,我们需要使用数据定义语言(DDL)语句。在这种情况下,我们必须使用ALTER语句。

ALTER - 改变数据库的结构

查询将是 -

ALTER TABLE `tbl_Country` DROP `IsDeleted`;

91
投票

使用CHANGEALTER TABLE从表中删除列,使用ALTER TABLEALTER TABLE来更改列。

DROP COLUMN

40
投票

要从表中删除单个列,您可以使用:

CHANGE

要删除多个列,请执行以下操作:

MODIFY

26
投票

从表中删除列。

ALTER TABLE tbl_Country DROP COLUMN IsDeleted;
ALTER TABLE tbl_Country MODIFY IsDeleted tinyint(1) NOT NULL;
ALTER TABLE tbl_Country CHANGE IsDeleted IsDeleted tinyint(1) NOT NULL;

或者没有'COLUMN'字样

ALTER TABLE table_name DROP COLUMN Column_name;

24
投票

要删除列,请使用此项,

ALTER TABLE table_name DROP COLUMN Column_name, DROP COLUMN Column_name;

15
投票

您可以使用

ALTER TABLE tbl_Country DROP COLUMN IsDeleted1, DROP COLUMN IsDeleted2;

11
投票
ALTER TABLE tbl_Country DROP IsDeleted1, DROP IsDeleted2;

要么,

ALTER TABLE `tbl_Country` DROP `your_col`

7
投票

使用alter table <tblname> drop column <colname>

ALTER TABLE `tablename` DROP `columnname`;

6
投票
ALTER TABLE `tablename` DROP COLUMN `columnname`;
© www.soinside.com 2019 - 2024. All rights reserved.