2012-01-26 95 views
1

獲得剛剛添加的行的最佳方式是什麼?我正在使用Heroku,Node和Postgres以及Expressjs。我希望能夠做到這樣的事情。獲取剛剛添加的行的最佳方法。 Heroku + Node + Postgres

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

理想的回調將有關於該行的信息,它只是在進入,但它只是一個對象,看起來像

{ rows:[] } 

內容有沒有得到該行的一個好辦法,我剛剛添加,謝謝。

回答

4

你可能想使用INSERT ... RETURNING

可選RETURNING子句使INSERT來計算,並根據每行返回值(一個或多個)實際上插入。這主要用於獲取默認值提供的值,例如序列號。但是,允許使用表格列的任何表達式。 RETURNING列表的語法與SELECT的輸出列表的語法相同。

因此,像這樣:

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

應該讓你在你的回調函數中新插入的行。

相關問題