我使用soci和C ++来访问我的数据库。是否可以修改以下表达式以获取为该表达式添加的行提供的新主键?
*dbSession << "insert into myTable(myRow) values (:myVal)", soci::use(myVal);
e.g。
long newID = *dbSession << "insert into myTable(myRow) values (:myVal)", soci::use(myVal);
这样我可以使用newID继续工作吗?在这种情况下,id是主键(bigserial)
答案 0 :(得分:2)
在SQL中,您可以使用RETURNING
来获取生成的ID
喜欢:INSERT INTO tbloCustomer (Name) VALUES ('Goofy') RETURNING ID;
(如果您的主键被称为ID;)