to-go-struct-intellij-plugin icon indicating copy to clipboard operation
to-go-struct-intellij-plugin copied to clipboard

mysql里index关键字无法识别

Open ZooDoz opened this issue 3 years ago • 3 comments

转换一个mysql的建表语句时,包含index关键字报错

ZooDoz avatar Nov 11 '21 02:11 ZooDoz

Please paste the SQL string, I will fix soon, thanks.

liuhao2050 avatar Nov 12 '21 07:11 liuhao2050

com.alibaba.druid.sql.parser.ParserException: error pos 685, line 14, column 39, token INDEX

CREATE TABLE activity_tab ( id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, activity VARCHAR(128) NOT NULL COMMENT '活动名称', description VARCHAR(1024) NOT NULL COMMENT '活动描述', category_id VARCHAR(128) NOT NULL COMMENT '活动类型', manager_id BIGINT NOT NULL, start_time DATETIME NOT NULL COMMENT '活动开始时间', end_time DATETIME NOT NULL COMMENT '活动结束时间', del_flg TINYINT DEFAULT 0 NOT NULL, create_time DATETIME DEFAULT CURRENT_TIMESTAMP, update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (id), UNIQUE idx_activity (activity), INDEX idx_category (category_id), INDEX idx_start_end_time (start_time, end_time) ) COMMENT '活动分类表' ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci;

ZooDoz avatar Nov 15 '21 06:11 ZooDoz

com.alibaba.druid.sql.parser.ParserException: error pos 685, line 14, column 39, token INDEX

CREATE TABLE activity_tab ( id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, activity VARCHAR(128) NOT NULL COMMENT '活动名称', description VARCHAR(1024) NOT NULL COMMENT '活动描述', category_id VARCHAR(128) NOT NULL COMMENT '活动类型', manager_id BIGINT NOT NULL, start_time DATETIME NOT NULL COMMENT '活动开始时间', end_time DATETIME NOT NULL COMMENT '活动结束时间', del_flg TINYINT DEFAULT 0 NOT NULL, create_time DATETIME DEFAULT CURRENT_TIMESTAMP, update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (id), UNIQUE idx_activity (activity), INDEX idx_category (category_id), INDEX idx_start_end_time (start_time, end_time) ) COMMENT '活动分类表' ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci;

原因是1.1.16的Druid sql parser没有办法解析INDEX这个关键词 把druid 升级到 1.2.8即可解决改问题

MindaWang avatar Dec 08 '21 14:12 MindaWang