问题描述
-
场景描述
修改已存在表,添加主键失败
-
执行SQL
ALTER TABLE 表名 ADD CONSTRAINT 约束名 PRIMARY KEY (字段名);
-
报错信息
[42000][-201] 发生语法错误。 [00000] java.sql.SQLException
原因分析
-
GBase8s不支持上述语法
GBase8s跟informix类似,相关语法可以参照informix数据库
解决方案
-
SQL样例
ALTER TABLE 表名 ADD CONSTRAINT PRIMARY KEY (字段名) [CONSTRAINT 主键名];
其他
-
主键名称规范
GBase8s创建主键会默认起主键名称,从系统表中查询出来的主键名称很可能为纯数字,基于拼接的SQL无法添加纯数字的主键