1

挿入されたレコード ID 値を取得するような問題があります。ここでは、DatSet を使用してレコードを挿入しています。すべてのレコードを削除したテーブル GAME があり、以下のようにデータセットを使用してレコードを挿入しているとします。

SqlDataAdapter sqlAdapter = new SqlDataAdapter("select * from GAME", sqlCon);
            DataSet ds = new DataSet();
            DataRow dr;
            sqlAdapter.FillSchema(ds, SchemaType.Source, "GAME");
            sqlAdapter.Fill(ds, "GAME");
            dr = ds.Tables["GAME"].NewRow();
            SqlCommandBuilder objSqlcmdBuilder = new SqlCommandBuilder(sqlAdapter);
            dr["NAME"] = "TABLE TENNIS";
            dr["PlayedDate"] = "01/02/2010";
            ds.Tables["GAME"].Rows.Add(dr);
            sqlAdapter.Update(ds, "GAME");
            MessageBox.Show(Convert.ToString(dr["GameId"]), "DataSet Demo");

ここでは、常に GameId を「0」として取得しています。しかし、挿入されたレコード ID 値を取得する必要があります。DataSet を使用する方法はありますか?

4

1 に答える 1

1

Output.Inserted、Output.Updated、Output.Deleted などのOUTPUT 句を使用します。私はあなたのために小さな例を作ることができたかもしれませんが、それはすでにそこにあることがわかりました[SQL SERVER – 2005 – OUTPUT Clause Example and Explanation with INSERT, UPDATE, DELETE]。これが役立つことを願っています。

于 2012-09-28T07:49:16.197 に答える