sql >> Databasteknik >  >> RDS >> Mysql

Använd ALTER för att släppa en kolumn om den finns i MySQL

För MySQL finns det ingen: MySQL-funktionsbegäran .

Att tillåta detta är utan tvekan en riktigt dålig idé, hur som helst:IF EXISTS indikerar att du kör destruktiva operationer på en databas med (för dig) okänd struktur. Det kan finnas situationer där detta är acceptabelt för snabbt och smutsigt lokalt arbete, men om du är frestad att köra ett sådant uttalande mot produktionsdata (i en migrering etc.), så leker du med elden.

Men om du insisterar är det inte svårt att helt enkelt kontrollera om det finns i klienten först, eller att fånga felet.

MariaDB stöder också följande som börjar med 10.0.2:

DROP [COLUMN] [IF EXISTS] col_name 

i. e.

ALTER TABLE my_table DROP IF EXISTS my_column;

Men det är utan tvekan en dålig idé att förlita sig på en icke-standardfunktion som stöds av endast en av flera mysql-gaffel.



  1. Skriver ut värdet på en variabel i SQL Developer

  2. Importera "xml" till SQL Server

  3. Hur man installerar och konfigurerar ClickHouse på Ubuntu 20.04

  4. Att skicka en array av data som en indataparameter till en Oracle-procedur