shardingsphere使用以后,同时使用了mybatis书写sql进行insert,但每次insert语句,都要把主键id写到sql里面,并且其value值置为null才可以,搞不懂什么情况呀
3条回答 默认 最新
- 霸都小魔女 2023-03-02 13:26关注
小魔女参考了bing和GPT部分内容调写:
shardingsphere集成mybatis遇到的小坑,其实是因为shardingsphere自带的分片策略,会自动生成主键id,而mybatis在执行insert语句时,会把主键id写到sql里面,但是由于shardingsphere自动生成的id,是不能提前知道的,所以就需要把主键id的value值置为null,这样shardingsphere就可以自动生成主键id了。INSERT INTO t_order (order_id, user_id, status) VALUES (null, 10, 'INIT');
回答不易,记得采纳呀。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报