Mycat2 Sql兼容性 insert

2021-09-09 13:56 更新

insert兼容性

  1. INSERT [INTO] [schema_name.]tbl_name
  2. [(col_name,...)]
  3. {VALUES | VALUE} ({expr },...),(...),...
  4. [ ON DUPLICATE KEY UPDATE
  5. col_name=expr
  6. [, col_name=expr] ... ]
  7. INSERT [INTO] [schema_name.]tbl_name
  8. SET col_name={expr | DEFAULT}, ...
  9. [ ON DUPLICATE KEY UPDATE
  10. col_name=expr [, col_name=expr] ... ]

检查项

last_insert_id在自增主键的情况下能在报文中正确返回id和在sql中使用last_insert_id()函数可以查询id变量

单表

只会把SQL转发对应节点

全局表

sql往配置的(多个)dataNode下发

分片表

  1. 带有分片字段的sql发往对应的dataNode
  2. 不带分片字段则往(多个)dataNode下发

在分片表下

  1. 不支持分片键使用函数运算,也不能是子查询
  2. 不支持 PARTITION 语法
  3. 注意如果带有子查询,该子查询不能查询物理表中不存在的表

不支持分片键的分片键带有默认值约束,分片值必须显式指定,对于全局二级索引的分片键也是如此

对于时间类型,请使用字符串表达,例如

  1. INSERT INTO `travelrecord2`(`id`,`user_id`,`traveldate`,`fee`,`days`,`blob`)
  2. VALUES
  3. (6,2,'2021-02-22 18:34:05.983692',4.5,4,NULL),
  4. (7,2,'2021-02-22 18:34:05.983692',4.5,4,NULL),
  5. (8,2,'2021-02-22 18:34:05.983692',4.5,4,NULL);
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号