[zebra源码]insert后获取自增值的处理
sql语句:
(1) insert into [table] xx values(x,x,xx);
(2) select @@Identity; 或 select last_insert_id();
比如这种常见的 insert 后要获取自增主键值的, 需要在同一个连接同一个statement操作
如先 Statement#executeUpdate("insert into [table] xx values(x,x,xx);")
, 然后再用同一个statement#executeQuery("select @@Identity;")
获取自增值
- 执行第一条语句后 zebra 会先把第一条sql语句执行后 原生 jdbc Statement#getGeneratedKeys() 返回的 ResultSet 缓存在ShardStatement 里
- 等后面的语句执行到 select @@identity; 的时候 直接返回 generatedKey
完整目录:数据库中间件zebra源码分析
本文来自博客园,作者:mushishi,转载请注明原文链接:https://www.cnblogs.com/mushishi/p/15022090.html