我遇到了问题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
在数据库中的列,插入 NULL 值而不是默认值 10。
我想到了实现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");