把数据从数据表a读出来,然后写入到数据表b中,其中数据表a是不断的在更新,所以也希望不断把数据从数据表a中写入到数据表b中,其中在两个数据表都设置了一个id段,使其不断的自增以此来纪录数据。为了保证数据的不重复传输,我想把数据表b的id取出来跟数据表a的id进行对比,以此来确定该从哪一条数据开始传输,现在问题是在完成一条数据的插入数据表b以后,这个新插入的id取不出来,是我的方法问题,还是我的代码问题?请问各位高人指点迷津!
Dim conn1 As New ADODB.Connection
Dim conn2 As New ADODB.Connection
Dim str1, str2, sql1, sql2 As String
Dim rs1 As New ADODB.Recordset
Dim rs2 As New ADODB.Recordset
Dim i, j, a, b, c As Integer
Dim s() As Variant
Private Sub Form_Load()
str1 = "driver={sql server};server=wgh;database=dungou;uid=wgh0410;pwd=wgh0410"
str2 = "driver={sql server};server=wgh;database=shield_machine;uid=wgh0410;pwd=wgh0410"
With conn1
.ConnectionString = str1
.ConnectionTimeout = 10
.Open
End With
With conn2
.ConnectionString = str2
.ConnectionTimeout = 10
.Open
End With
rs1.Open "select * from No_1_shield_machine ", conn1, adOpenStatic, adLockOptimistic
rs2.Open "select * from No_1_shield_machine ", conn2, adOpenStatic, adLockOptimistic
j = rs2.Fields.Count
ReDim s(106)
End Sub
Private Sub Command3_Click()
If rs2.EOF And rs2.BOF Then
a = 0
End If
If Not rs2.EOF And Not rs2.BOF Then
rs2.MoveLast
a = rs2.Fields(0).Value
End If
rs1.MoveLast
b = rs1.Fields(0).Value
c=a+1
If a <> b And a <> 0 Then
rs1.Find "id='" & c & "'", 0, adSearchForward, 1
ElseIf a <> b And a = 0 Then
rs1.MoveFirst
End If
For i = 0 To j - 1
s(i) = rs1.Fields(i).Value
Next i
sql1 = "insert into No_1_shield_machine values('" & s(0) & "','" & s(1) & "','" & s(2) & "', '" & s(3) & "','" & s(4) & "','" & s(5) & "','" & s(6) & "','" & s(7) & "','" & s(8) & "','" & s(9) & _
"','" & s(10) & "','" & s(11) & "','" & s(12) & "','" & s(13) & "','" & s(14) & "','" & s(15) & "','" & s(16) & "','" & s(17) & "','" & s(18) & "','" & s(19) & "','" & s(20) & "','" & s(21) & _
"','" & s(22) & "','" & s(23) & "','" & s(24) & "','" & s(25) & "','" & s(26) & "','" & s(27) & "','" & s(28) & "','" & s(29) & "','" & s(30) & "','" & s(31) & "','" & s(32) & "','" & s(33) & _
"','" & s(34) & "','" & s(35) & "','" & s(36) & "','" & s(37) & "','" & s(38) & "','" & s(39) & "','" & s(40) & "','" & s(41) & "','" & s(42) & "','" & s(43) & "','" & s(44) & "','" & s(45) & _
"','" & s(46) & "','" & s(47) & "','" & s(48) & "','" & s(49) & "','" & s(50) & "','" & s(51) & "','" & s(52) & "','" & s(53) & "','" & s(54) & "','" & s(55) & "','" & s(56) & "','" & s(57) & _
"','" & s(58) & "','" & s(59) & "','" & s(60) & "','" & s(61) & "','" & s(62) & "','" & s(63) & "','" & s(64) & "','" & s(65) & "','" & s(66) & "','" & s(67) & "','" & s(68) & "','" & s(69) & _
"','" & s(70) & "','" & s(71) & "','" & s(72) & "','" & s(73) & "','" & s(74) & "','" & s(75) & "','" & s(76) & "','" & s(77) & "','" & s(78) & "','" & s(79) & "','" & s(80) & "','" & s(81) & _
"','" & s(82) & "','" & s(83) & "','" & s(84) & "','" & s(85) & "','" & s(86) & "','" & s(87) & "','" & s(88) & "','" & s(89) & "','" & s(90) & "','" & s(91) & "','" & s(92) & "','" & s(93) & _
"','" & s(94) & "','" & s(95) & "','" & s(96) & "','" & s(97) & "','" & s(98) & "','" & s(99) & "','" & s(100) & "','" & s(101) & "','" & s(102) & "','" & s(103) & "','" & s(104) & "','" & s(105) & "')"
conn2.Execute sql1
End Sub
代码有点乱,感觉问题就在插入数据后不能把插入数据的id读出来,请各位高人帮忙解决,谢谢