注册

代码中同时执行CREATE TABLE语句和COMMENT ON TABLE报错

DM_103526 2023/02/27 1506 1 已解决

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM8
【操作系统】:windows11
【CPU】:i7 12代
【问题描述】*:使用 Java 开发框架 mybatis 直接执行如下语句

CREATE TABLE "DATA"."test_demo"("id" BIGINT NOT NULL,"name" VARCHAR(2048),"sort" INT DEFAULT 0,"create_time" DATETIME(6),NOT CLUSTER PRIMARY KEY("id")) STORAGE(ON "MAIN", CLUSTERBTR);
COMMENT ON TABLE "DATA"."test_demo" IS '测试一下';
COMMENT ON COLUMN "DATA"."test_demo"."id" IS '测试ID';
COMMENT ON COLUMN "DATA"."test_demo"."name" IS '名称';
COMMENT ON COLUMN "DATA"."test_demo"."sort" IS '排序号';
COMMENT ON COLUMN "DATA"."test_demo"."create_time" IS '创建时间';

出现如下错误:

org.springframework.jdbc.BadSqlGrammarException: 
### Error querying database.  Cause: dm.jdbc.driver.DMException: 第 2 行, 第 1 列[COMMENT]附近出现错误: 
语法分析出错
### The error may exist in com/integrated/data/sys/mapper/SysTableMapper.java (best guess)
### The error may involve com.integrated.data.sys.mapper.SysTableMapper.executeSql
### The error occurred while executing a query
### SQL: CREATE TABLE "DATA"."test_demo"("id" BIGINT NOT NULL,"name" VARCHAR(2048),"sort" INT DEFAULT 0,"create_time" DATETIME(6),NOT CLUSTER PRIMARY KEY("id")) STORAGE(ON "MAIN", CLUSTERBTR); COMMENT ON TABLE "DATA"."test_demo" IS '测试一下'; COMMENT ON COLUMN "DATA"."test_demo"."id" IS '测试ID'; COMMENT ON COLUMN "DATA"."test_demo"."name" IS '名称'; COMMENT ON COLUMN "DATA"."test_demo"."sort" IS '排序号'; COMMENT ON COLUMN "DATA"."test_demo"."create_time" IS '创建时间';
### Cause: dm.jdbc.driver.DMException: 第 2 行, 第 1 列[COMMENT]附近出现错误: 
语法分析出错
; bad SQL grammar []

但是我直接在DM管理工具上执行SQL却能执行成功。

image.png

但是如果单独执行 CREATE TABLE 语句是没有问题的

这是什么原因?有大神能解答一下吗?不胜感激!!!

回答 0
暂无回答
扫一扫
联系客服