Come eliminare una colonna da una tabella in MySQL


441

Vista la tabella creata usando:

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

Come posso eliminare la colonna IsDeleted?

Risposte:


713
ALTER TABLE tbl_Country DROP COLUMN IsDeleted;

Ecco un esempio funzionante.

Nota che la COLUMNparola chiave è facoltativa, poiché MySQL accetterà solo DROP IsDeleted. Inoltre, per eliminare più colonne, è necessario separarle da virgole e includerle DROPper ognuna.

ALTER TABLE tbl_Country
  DROP COLUMN IsDeleted,
  DROP COLUMN CountryName;

Questo ti permette di DROP, ADDe ALTERpiù colonne sullo stesso tavolo nella dichiarazione uno. Dal manuale di riferimento di MySQL :

È possibile emettere più ADD, ALTER, DROP, e CHANGEle clausole in una singola ALTER TABLEdichiarazione, separati da virgole. Questa è un'estensione di MySQL a SQL standard, che consente solo una di ciascuna clausola per ALTER TABLEistruzione.


96

Utilizzare ALTER TABLEcon DROP COLUMNper eliminare una colonna da una tabella e CHANGEo MODIFYper modificare una colonna.

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;

È possibile utilizzare la colonna Cambia o Modifica per fare lo stesso. Controlla il link che ti darà l'idea di aggiornare una colonna usando ALTER TABLE
Saharsh Shah

29

Per cancellare la colonna usa questo,

ALTER TABLE `tbl_Country` DROP `your_col`


12
ALTER TABLE `tablename` DROP `columnname`;

O,

ALTER TABLE `tablename` DROP COLUMN `columnname`;

11

Se stai eseguendo MySQL 5.6 in poi, puoi effettuare questa operazione online, consentendo ad altre sessioni di leggere e scrivere sul tuo tavolo mentre l'operazione è stata eseguita:

ALTER TABLE tbl_Country DROP COLUMN IsDeleted, ALGORITHM=INPLACE, LOCK=NONE;

9

Utilizzare ALTER:

ALTER TABLE `tbl_Country` DROP COLUMN `column_name`;

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.