Mycat+Mysql 插入数据报错 i[Err] 1064 - partition table, insert must provide ColumnList

时间:2020-12-18 21:13:19

  使用Navicat连接Mycat 8066 成功插入了分库表和全局表

  1、全局表 sql如下:

INSERT INTO `t_rank` VALUES ('259bfdc3-7922-4839-96c7-61c89e877dc5', '法国', '', '', '', '', null, '');
INSERT INTO `t_rank` VALUES ('41eece5d-9d86-4cfe-b0ce-e6d4e4021cac', '中国', '', '', '', '', null, '');
INSERT INTO `t_rank` VALUES ('4ae59e99-5f41-4a68-af07-65c15f72b247', '韩国', '', '', '', '', null, '');

  插入成功!

  2、分库表 sql如下:

INSERT INTO `t_user_label` VALUES ('00041fc4-5947-11e6-a45d-fa163ee05659', '1ae56f42-dd56-4c00-9cf7-c580f428e20d', '', null, '工作', '', null, '', '', null, null, null, null);
INSERT INTO `t_user_label` VALUES ('00067f28-594c-11e6-a45d-fa163ee05659', '95dc53e0-de02-41fd-85a6-3da25caba599', '', null, '工作', '', null, '', '', null, null, null, null);
INSERT INTO `t_user_label` VALUES ('0006d1a6-5947-11e6-a45d-fa163ee05659', '1ae56f42-dd56-4c00-9cf7-c580f428e20d', '', null, '生活', '', null, '', '', null, null, null, null);

  本想这些sql是从mysql导出的,应该不会出错,但是执行的时候报错

  [Err] 1064 - partition table, insert must provide ColumnList 
  

  看意思是要sql提供要插入的表明,但是我是全列插入,所以不理解为什么?

  3、解决办法:

  我把所有的列明都添加上,发现添加成功:

INSERT INTO t_user_setting(ACCOUNT_ID,ACCOUNT_NAME,CTAG,ACCOUNT_TYPE,ACCOUNT_STATUS,REGIST_CHANNEL,REGIST_TIME,ACTIVE_CHANNEL,ACTIVE_TIME,CALENDAR_VIEW,WEEK_FORMAT,REPEAT_VIEW,USER_LABEL_NAME,USER_LABEL_COLOR,PROVINCE,MEAL,IS_NEED_REMIND,REMIND_TYPE,REMIND_TIME_AHEAD,CREATE_TIME,LAST_UPDATE_TIME,LAST_LOGIN_TIME) VALUES ('0006f1b5-956d-4b2d-a3d7-baa10174b841', '13062545830@189.cn', '', '', '', null, '', null, null, '', '', '', '13062545830@189.cn', '', null, null, '', '{\"sms\":0,\"email\":1}', '', '', '', null);

  Mycat+Mysql 插入数据报错 i[Err] 1064 - partition table, insert must provide ColumnList

  在网上寻求到如上的解释!