に問題がありましたDataAdapter.Update
。
シナリオは次のとおりです。このようなデータベーステーブルがあります
Student
(StudentID INT NOT NULL,
STUDENTNAME NVARCHAR(100),
STUDENTIdentity INT DEFAULT 10)
そして、私のDatatable
中には次のような行があります
ds学生
StudentID STUDENTNAME STUDENTIdentity
1 AAA
2 BBB 20
3 CCC
Datatable
このように生徒を更新しようとすると
ds.Update(dsStudent,"Student");
これはうまくいっています。しかし、studentidentity
データベース内の私の列では、デフォルト値 10 の代わりに NULL 値が挿入されています。
イベントを実装OnRowUpdating
し、パラメーターを変更して、行単位の更新ステートメントの変更を実現することを考えました。
しかし問題は、これが私のプロジェクトにすでに実装されていることです。では、これを行うための一般的な解決策はありますか?
更新しようとしているサンプルコード
dr = ds.Tables["Student"].NewRow(); dr["StudentId"] = 534; dr["StudentName"] = "robin"; ds.Tables["Student"].Rows.Add(dr); cmdBuilder = new SqlCommandBuilder(da); da.Update(ds, "Student");