向 MySQL 表動態新增欄位
您的目標是僅在現有 MySQL 表中尚未新增欄位時存在。為了實現這一點,您需要一個在嘗試變更之前檢查列是否存在的解決方案。
一種可靠的方法涉及利用預存程序來封裝條件邏輯:
DELIMITER $$ DROP PROCEDURE IF EXISTS add_column_if_not_exists $$ CREATE PROCEDURE add_column_if_not_exists() BEGIN -- Check if the column exists IF NOT EXISTS( SELECT * FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='table_name' AND COLUMN_NAME='new_column_name' ) THEN -- Alter the table to add the column ALTER TABLE table_name ADD new_column_name data_type NOT NULL DEFAULT value; END IF; END $$ CALL add_column_if_not_exists() $$ DELIMITER ;
此預存程序完成以下任務:
請記住更改 table_name 和new_column_name 來反映您的特定表和列需求。
以上是如何僅在 MySQL 列尚不存在時才新增它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!