MYSQL如果列不存在,如何更改表

时间:2014-05-14 08:42:53

标签: mysql sql database

我使用的SQL不支持INFORMATION_SCHEMA.COLUMNS。我的代码不起作用

ALTER TABLE Report ADD IF NOT EXISTS LastName CHAR(25);

这是有效的

ALTER TABLE Report ADD LastName CHAR(25);

哪一部分错了?

IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS 
               WHERE TABLE_NAME  = 'Report' AND COLUMN_NAME = 'LastName' ) 
    ALTER TABLE 'Report' ADD 'LastName' CHAR(25);

1 个答案:

答案 0 :(得分:1)

您需要在语句中引用对象名称。

IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS 
           WHERE TABLE_NAME  = 'Report' AND COLUMN_NAME = 'LastName' ) 
ALTER TABLE MLReport ADD LastName CHAR(25);