所以我有一个JDBC调用将数据插入数据库。
我希望能够整体查看该语句(因此,您知道,“插入some_table(colA,colB)值(1,2)”)。
但我也喜欢将该声明视为真正的是什么 - 也就是说,
insert into some_table (id, colA, colB) values (8,1,2)
其中id是主键(或任何其他auto_increment字段),其中sql thingy将确定自动递增的值!
这可能吗?
答案 0 :(得分:3)
声明没有改变。如果表中有自动增量键(ID
),它永远不会出现在语句中,而是在执行语句时由DB引擎添加。
因此不可能看到带有ID列的语句,但是根据您的DBMS,有不同的技术来确定自动生成的值是什么。
IE中。在SQL Server中,您可以使用SCOPE_IDENTITY()。在Oracle上,您可以使用RETURNING INTO。对于Postgres,您可以查看Can I use return value of INSERT...RETURNING in another INSERT?