-1

動的テーブル (.NET C#) にデータを挿入するために動的 SQL を使用しています。ID 列の値を返す必要があり、scope_identity を使用しようとしましたが、結果は常に 1 と表示されます。

これは私のコードです

dqDbContext dqx = new dqDbContext();
string queryHdr = "INSERT INTO " + tableHdrName + " VALUES ("
                        + configId + ",'Administrator',GETDATE()); SELECT SCOPE_IDENTITY();";

int id = dqx.Database.ExecuteSqlCommand(queryHdr);

私がここに欠けているものはありますか?

ありがとう

フェリックス

4

2 に答える 2

0

add SET NOCOUNT ON;、値 1 を取得すると、影響を受ける行数になると思います。

string queryHdr = @"SET NOCOUNT ON; 
                    INSERT INTO " + tableHdrName + " VALUES ("
                         + configId + @",'Administrator',GETDATE());
                    SELECT SCOPE_IDENTITY();";
于 2015-02-12T10:51:53.787 に答える