用于添加多个列的mysql语句,无论它们是否存在

sve*_*n30 1 mysql phpmyadmin alter

我正在尝试为软件程序编写更新mysql语句.目前这是我的判断,但我现在不知道如何添加多个列进行更新.

此代码当前添加了列,无论它是否存在.


/*delimiter '//'
CREATE PROCEDURE addcol() BEGIN
IF NOT EXISTS(
SELECT * FROM information_schema.COLUMNS
WHERE COLUMN_NAME=`top_status` AND TABLE_NAME='categories'
)
THEN
ALTER TABLE `categories`
ADD COLUMN `top_status` tinyint(1) NOT NULL default '1';
END IF;
END;
delimiter ';'
CALL addcol();
DROP PROCEDURE addcol;*/
Run Code Online (Sandbox Code Playgroud)

有人可以为我提供正确的声明,让这样的东西工作......即.WHERE COLUMN_NAME = column1,column2等.

我已经尝试了各种变体,除了上面的内容之外,它们都在phpmyadmin中返回错误.

小智 6

使用ALTER TABLE语句向表中添加多个列:

ALTER TABLE TableName
ADD (column1 col_definition,
column2 col_definition,
column3 col_definition,
....      ......
....      ......
columnN col_definition);
Run Code Online (Sandbox Code Playgroud)