客户端与服务器之间的数据库更新传输问题!
我的问题:
客户端与服务器的数据库结构是一样的,我的目的是把客户端的新数据上传到服务器的对应表中,把服务器在客户端中没有的记录下载到客户端的对表中。以下是我的小段代码:
'连结客户端数据库
Adodc1.ConnectionString = con
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = "select * from gas_station order by gas_station_id ASC"
Adodc1.Refresh
'连结服务器数据库
Adodc2.ConnectionString = rsSQL
Adodc2.CommandType = adCmdText
Adodc2.RecordSource = "select * from gas_station order by gas_station_id ASC"
Adodc2.Refresh
'下载数据到客户端
Adodc1.Recordset.AddNew ' 判断空值
Adodc1.Recordset("gas_station_id") = Adodc2.Recordset("gas_station_id")
If VarType(Adodc2.Recordset("gas_station_name")) = vbNull Then
Adodc1.Recordset("gas_station_name") = Null
Else
Adodc1.Recordset("gas_station_name") = Adodc2.Recordset("gas_station_name")
End If
.....
Adodc1.Recordset.UpdateBatch adAffectAllChapters
Adodc1.Refresh
'向服务器提交新记录
Adodc1.ConnectionString = rsSQL
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = "select * from member_bargaining"
Adodc1.Refresh
Adodc2.ConnectionString = conn
Adodc2.CommandType = adCmdText
Adodc2.RecordSource = "select * from member_bargaining where state=0 order by user_id,id ASC"
Adodc2.Refresh
Adodc1.Recordset.AddNew ' 判断空值
If VarType(Adodc3.Recordset("gas_station_id")) = vbNull Then
Adodc1.Recordset("gas_station_id") = Null
Else
Adodc1.Recordset("gas_station_id") = Adodc3.Recordset("gas_station_id")
End If
......
Adodc1.Recordset.UpdateBatch adAffectAllChapters
Adodc1.Refresh
-----------------------------------------------
1、这样子的上传下载的速度很慢!
2、有的时候出现重复数据
3、到后来数据有时候都传不动了
请问大家,我这种传输方式是不是不理想的一种传输方式呀?我这里是通过循环一条条增加的,有没有一种更的好的方法呀?你们是采用什么方式来实现客户端与服务器之间的数据库交换数据的?
谢谢大家!小弟我急用!请有经验的高手给我提供点帮助!