Mysql

MySQL:如果不存在,如何創建列?

  • May 21, 2021

只有當它不存在時,我才嘗試為我的表創建一個列。我已經研究了很多,但我還沒有找到任何解決方案。

這真的可以有條件地創建 Column 嗎?

MySQLALTER TABLE沒有IF EXISTS規範。

如果您需要定期執行以下操作,則可以通過使用儲存過程或程式語言來執行以下操作:

虛擬碼:

  • 使用下面的 SQL 查找列是否存在:

column_name 從中選擇INFORMATION_SCHEMACOLUMNS 哪裡TABLE_SCHEMA=

$$ Database Name $$ 和TABLE_NAME=$$ Table Name $$;

  • 如果上述查詢返回結果,則表示該列存在,否則您可以繼續創建該列。

Maria DB 10.219 現在實際上存在

ALTER TABLE test ADD COLUMN IF NOT EXISTS column_a VARCHAR(255);

獎金,它也適用於修改

ALTER TABLE test MODIFY IF EXISTS column_a VARCHAR(255);

引用自:https://dba.stackexchange.com/questions/169458