1

DataSet に加えた変更を DataBase に保存したいのですが、次のエラーが発生しました。

DataAdapter.SelectCommand プロパティを初期化する必要があります

これは私が書いたコードです:

dr = dt.NewRow

dr(0) = t1.Text
dr(1) = t2.Text
dr(2) = t3.Text
dr(3) = d1.Value

dt.Rows.Add(dr)

da.InsertCommand = cb.GetInsertCommand()
da.Update(ds, "stagiaire")
MsgBox("ajout effectu!")

dr は DataRow / dt は DataTable / da は SqlDataAdapter / cb は SqlCommandBuilder / ds は DataSet

しかし、この行を : da.InsertCommand = cb.GetInsertCommand()with :に変更cb = New SqlCommandBuilder(da)すると、うまくいきました。

では、なぜ最初に使用したコードが機能しなかったのでしょうか。

4

1 に答える 1

0

このようにするか

 dr = dt.NewRow

 dr(0) = t1.Text
 dr(1) = t2.Text
 dr(2) = t3.Text
 dr(3) = d1.Value

 dt.Rows.Add(dr)
 SqlComand cmd=new SqlCommand("insert query",conn)
 da.InsertCommand = cmd
 da.Update(ds, "stagiaire")
 MsgBox("ajout effectu!")

また

 dr = dt.NewRow

 dr(0) = t1.Text
 dr(1) = t2.Text
 dr(2) = t3.Text
 dr(3) = d1.Value

 dt.Rows.Add(dr)
 SqlCommandBuilder cb=new SqlCommandBuilder (da)
 da.InsertCommand = cb.GetInsertCommand()
 da.Update(ds, "stagiaire")
 MsgBox("ajout effectu!")
于 2013-01-23T15:56:30.727 に答える