获得刚刚添加的行的最佳方法。 Heroku + Node + Postgres

获得刚刚添加的行的最佳方法是什么?我正在使用Heroku,Node和Postgres以及Expressjs。 我希望能够做到这样的事情。

app.post( '/', function( req, res ){ client.query("INSERT into ..", function( err, result ){ res.send( result.id ); }); }); 

理想情况下,callback将包含刚刚input的行的信息,但其内容只是一个对象

 { rows:[] } 

有没有一个很好的方法来获得我刚添加的那一行,谢谢。

你可能想要使用INSERT ... RETURNING

可选的RETURNING子句会导致INSERT根据实际插入的每一行计算并返回值。 这主要用于获取默认提供的值,例如序列号。 但是,允许使用表格列的任何expression式。 RETURNING列表的语法与SELECT的输出列表的语法相同。

所以像这样的东西:

 client.query('insert into your_table (...) values (...) returning *', function(err, result) { // ... }); 

应该让你在你的callback函数中新插入的行。