如果不存在 MySQL 中的语法错误

问题描述

我正在尝试编写一种更新 SQL 来添加不存在的新列。

我已经尝试了一些东西,但没有任何效果。

如果我尝试 IF NOT EXISTS,我总是会收到一个我无法理解的语法错误。

IF NOT EXISTS( 
  SELECT * 
  FROM INFORMATION_SCHEMA.COLUMNS
  WHERE table_name = 'nutzer'AND table_schema = 'restdb' AND column_name = 'api_nutzer')
THEN
  ALTER TABLE `nutzer` ADD `api_nutzer` TINYINT;
END IF;
[SQL] IF NOT EXISTS( SELECT *
            FROM INFORMATION_SCHEMA.COLUMNS
           WHERE table_name = 'nutzer'
             AND table_schema = 'restdb'
             AND column_name = 'api_nutzer')  THEN

  ALTER TABLE `nutzer` ADD `api_nutzer` TINYINT;
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF NOT EXISTS( SELECT *
            FROM INFORMATION_SCHEMA.COLUMNS
          ' at line 1

如果我直接执行SELECT,就会得到结果

有人知道我的错误在哪里吗?

我使用 MySQL 服务器版本 8.0.22

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)