一段代码,在代码增加数据源SCZD的前提下,生成后台表dt1,并与“器材清单”表结构一致,同一器材编号,通过比对“操作信息_时间”,如果不一致,就把dt1的该行数据删除,并从“器材清单”表复制一条相同编号的数据到后台数据库。
执行代码后出现错误提示,而后台数据库的数据也没有发生变化,如何解决,请各位老师指教,谢谢!!
此主题相关图片如下:捕获1.png
代码如下:
If Connections.Contains("SCZD") = True Then
Dim cmd1 As New SQLCommand
cmd1.Conne ction Name = "SCZD"
cmd1.CommandText = "Select * Fro m {器材清单}"
Dim dt1 As DataTable = cmd1.ExecuteReader()
For Each dr As DataRow In DataTables("器材清单").DataRows
If dr.IsNull("器材编号") = False Then
Dim pr As DataRow = dt1.Find("器材编号 = '" & dr("器材编号") & "'")
If pr IsNot Nothing And dr("操作信息_时间") <> pr("操作信息_时间") Then
'替换行
DataTables("器材清单").LoadFilter = ""
DataTables("器材清单").Load
'删除编号(PC端)
Dim cmd7 As New SQLCommand
cmd7.Conne ction Name = "SCZD"
cmd7.CommandText = "DELETE FRO M {器材清单} WHERE 器材编号 = '" & dr("器材编号") & "'"
cmd7.ExecuteNonQuery()
'导出编号到PC端
Dim cmd8 As new SQLCmmand
cmd8.Conne ction Name = "SCZD"
cmd8.CommandText = "SELECT * FRO M {器材清单} WHERE 器材编号 = '" & dr("器材编号") & "'"
Dim dt8 As DataTable = cmd8.ExecuteReader(True)
Dim f8 As New Filler
f8.SourceTable = DataTables("器材清单") '手持机
f8.DataTable = dt8 'PC端
f8.Filter = "器材编号 = '" & dr("器材编号") & "'"
f8.Fill() '填充数据
dt8.Save()
End If
End If
Next
End If
[此贴子已经被作者于2017/8/10 15:42:01编辑过]