注册 登录
编程论坛 VB.NET论坛

为什么使用DataRow保存数据不成功,大家看下错在哪了。

none_six 发布于 2008-10-16 13:16, 1884 次点击
为什么使用DataRow保存数据不成功,大家看下错在哪了。
我在用下面方式向数据库中添加数据时总是不成功,也没有错误提示,只是保存不到数据表中,大家看一下到底是哪里错了。
打开数据表  
        SqlCmd_ = "Select * From cp_type"
        SQLDA_cpwh.SelectCommand = SqlCmd_cpwh
        DS_cpwh.Clear()
        SQLDA_cpwh.Fill(DS_cpwh, "cpwh")
        DGV_cpwh.DataSource = DS_cpwh.Tables("cpwh")
用DataRow方式保存
        MyDataRow = DS_cpwh.Tables("cpwh").NewRow()
        MyDataRow("编码") = Trim(TBox_bm.Text)
        MyDataRow("代号") = Trim(TBox_dh.Text)
        MyDataRow("名称") = Trim(TBox_mc.Text)
        DS_cpwh.Tables("cpwh").Rows.Add(MyDataRow)

如果换成下面的保存方式就可以:
        SqlCmd_ = "insert into cp_type (编码,代号,名称) values ('" & TBox_bm.Text & "','" & TBox_dh.Text & "','" & TBox_mc.Text & "')"
        SQLDA_cpwh.InsertCommand = SqlCmd_cpwh
        SQLDA_cpwh.InsertCommand.ExecuteNonQuery()
3 回复
#2
fairy42008-10-16 13:43
汗,你只是增加了一行,你还没有对增加的数据进行保存啊
在后面加上如下语句:
Dim daTempComm01 As SqlClient.SqlCommandBuilder
  daTempComm01 = New SqlClient.SqlCommandBuilder(SQLDA_cpwh)
  SQLDA_cpwh.Update(DS_cpwh, "cpwh")
#3
none_six2008-10-17 18:40
还是有个错误,错误提示
ExecuteReader: CommandText property has not been initialized
#4
tfnpghl2008-10-22 15:32
再加上下面一句
  SqlCmd_ = CommandType.Text
1