0

postgresql データベースを更新するときに、c# と ODBC を使用して挿入コマンドから行を返す方法を見つけようとしています。挿入するテーブルには、シーケンスを使用して値を自動インクリメントする user_id フィールドがあります。少なくとも user_id 値を取得しようとしています。

OdbcCommand addCMD = new OdbcCommand();
addCMD.Connection = odbcConn;
addCMD.CommandText = @"INSERT INTO ""users""(""username"") VALUES(?)";
addCMD.Parameters.Add("@username", OdbcType.Text).Value = username;
addCMD.ExecuteNonQuery();

ExecuteNonQuery影響を受けた行の数を返すことを知っています。datarow または user_id フィールドを取得する方法はありますか?

4

1 に答える 1

1

RETURNINGでこれを行うことができます

addCMD.CommandText = @"INSERT INTO ""users""(""username"") VALUES(?) RETURNING user_id";
于 2013-10-07T21:40:14.170 に答える