我使用社会与c++访问我的数据库。是否有可能修改以下表达式,以获得由该表达式添加的行所给定的新主键?
*dbSession << "insert into myTable(myRow) values (:myVal)", soci::use(myVal);
。
long newID = *dbSession << "insert into myTable(myRow) values (:myVal)", soci::use(myVal);
这样我就可以使用newID继续我的工作了?Id在这里是主键(bigserial)
在SQL中,您可以使用RETURNING
来获取生成的ID。
如:INSERT INTO tbloCustomer (Name) VALUES ('Goofy') RETURNING ID;
(如果主键名为ID;)