简体   繁体   English

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

[英]MYSQL How to alter table if column doesnt exist

I am using SQL which doesnt support INFORMATION_SCHEMA.COLUMNS. 我正在使用不支持INFORMATION_SCHEMA.COLUMNS的SQL。 My code, which doesnt work 我的代码不起作用

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

this works 这有效

ALTER TABLE Report ADD LastName CHAR(25);

which part is wrong? 哪一部分错了?

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

You need to quote the object names in the statement. 您需要在语句中引用对象名称。

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM