Como excluir uma coluna de uma tabela no MySQL

441

Dada a tabela criada usando:

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

Como posso excluir a coluna IsDeleted?

raji
fonte

Respostas:

713
ALTER TABLE tbl_Country DROP COLUMN IsDeleted;

Aqui está um exemplo de trabalho.

Observe que a COLUMNpalavra-chave é opcional, pois o MySQL aceitará apenas DROP IsDeleted. Além disso, para descartar várias colunas, você deve separá-las por vírgulas e incluir o DROPpara cada uma.

ALTER TABLE tbl_Country
  DROP COLUMN IsDeleted,
  DROP COLUMN CountryName;

Isso permite DROP, ADDe ALTERvárias colunas na mesma tabela na instrução one. No manual de referência do MySQL :

Você pode emitir múltiplos ADD, ALTER, DROP, e CHANGEcláusulas em uma única ALTER TABLEdeclaração, separados por vírgulas. Esta é uma extensão do MySQL para o SQL padrão, que permite apenas uma de cada cláusula por ALTER TABLEinstrução.

Cínico
fonte
96

Use ALTER TABLEcom DROP COLUMNpara soltar uma coluna de uma tabela e CHANGEou MODIFYpara alterar uma coluna.

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;
Saharsh Shah
fonte
Você pode usar a coluna Alterar ou Modificar para fazer o mesmo. Verifique o link que lhe dará a idéia de atualizar uma coluna usando ALTER TABLE
Saharsh Shah
29

Para excluir uma coluna, use isto,

ALTER TABLE `tbl_Country` DROP `your_col`
echo_Me
fonte
16

Você pode usar

alter table <tblname> drop column <colname>
Kapil gopinath
fonte
12
ALTER TABLE `tablename` DROP `columnname`;

Ou,

ALTER TABLE `tablename` DROP COLUMN `columnname`;
Avinash Nair
fonte
11

Se você estiver executando o MySQL 5.6 em diante, poderá fazer esta operação online, permitindo que outras sessões leiam e gravem na sua tabela enquanto a operação é executada:

ALTER TABLE tbl_Country DROP COLUMN IsDeleted, ALGORITHM=INPLACE, LOCK=NONE;
A. Colonna
fonte
9

Use ALTER:

ALTER TABLE `tbl_Country` DROP COLUMN `column_name`;
Lo Juego
fonte
7
ALTER TABLE tbl_Country DROP columnName;
Sterling Archer
fonte