求助,SQLiteDataAdapter更新到数据库中不成功的问题
编程环境:vb2010,System.Data.SQLite 1.0.113.0,win7 64 本论坛上的也有人问了这个问题,我按照搜索的内容进行了修改,也还是不行
下面一段代码是连接一个数据库,然后定位到指定行,在某字段保存一个图片文件,然后计划更新到数据库中
Imports System.Data.SQLite
Public salda_xmname As New SQLite.SQLiteDataAdapter
Public ds As New DataSet() '数据集
Public rowFind As DataRow 'treeview根据键值查找到项目数据库对象
Dim constr As String = "data source= D:\vbtest\mytest\data\qyglname.db"
Dim SQLconn As New Data.SQLite.SQLiteConnection '定义数据库链接
Dim sqlcmd As New SQLite.SQLiteCommand '定义查询操作
Try
SQLconn.ConnectionString = constr '链接数据库
SQLconn.Open()
sqlcmd.Connection = SQLconn
= "select * from xmname" ‘选择表名为xmname,填充到数据适配器中
salda_xmname = New SQLite.SQLiteDataAdapter(, SQLconn)
Finally
If Not (SQLconn Is Nothing) Then SQLconn.Dispose()
SQLconn = Nothing
If Not (salda_xmname Is Nothing) Then salda_xmname.Dispose()
salda_xmname = Nothing
End Try
salda_xmname.Fill(ds, "xmname") '从数据适配器填中充数据到数据集
ds.Tables("xmname").PrimaryKey = New DataColumn() {ds.Tables("xmname").Columns("treedate")} ‘指定主健
rowFind = ds.Tables("xmname").Rows.Find(NodeNameKey) ’查找变量为NodeNameKey,并定位到行
‘下段代码保存图片1.jpg 到字段 resut 中,
Dim myfilestream As New ("D:\vbtest\mytest\GRAPHICS\1.jpg", IO.FileMode.Open)
Dim data() As Byte
ReDim data(myfilestream.Length - 1)
myfilestream.Read(data, 0, myfilestream.Length)
myfilestream.Close()
rowFind("resut") = data '数据流赋值到字段中,
’下段代码计划从数据适配器中把所作修改更新到数据库中。但未成功,这是怎么回事?
Dim cmdBuilder As New SQLiteCommandBuilder(salda_xmname)
salda_xmname.Update(ds, "xmname")
改成
salda_xmname.Update(ds.Tables("xmname").GetChanges())
ds.Tables("xmname").AcceptChanges()
也不行
[此贴子已经被作者于2021-5-19 15:00编辑过]