可否将获得的记录集,用inser into语句重新导入另一张表中,但该记录集包含binary类型的大字段,如果不能用一句语聚实现,插入记录将是很麻烦的,获得记录集来源表与要插入的表分别属于两个ACCESS数据库,也就是用到了两个cnn联接.该怎么实现呢!!!

解决方案 »

  1.   

    Option Explicit
    Private conn1 As ADODB.Connection
    Private rs1 As ADODB.Recordset
    Private conn2 As ADODB.Connection
    Private rs2 As ADODB.RecordsetPrivate Sub Command3_Click()
    Dim dbfilename As String
    Dim strsql As String
    Dim ConnectString As String
    Dim i As Integer
    Set conn1 = New ADODB.Connection
    dbfilename = "F:\csdn_vb\database\listbox\article1.mdb"
    ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbfilename & ";Persist Security Info=False;"
    conn1.Open ConnectStringSet conn2 = New ADODB.Connection
    dbfilename = "F:\csdn_vb\database\listbox\article2.mdb"
    ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbfilename & ";Persist Security Info=False;"
    conn2.Open ConnectStringSet rs1 = New ADODB.Recordset
    Set rs2 = New ADODB.Recordsetstrsql = "select * from mz"
    rs1.Open strsql, conn1, 1, 3
    rs2.Open strsql, conn2, 1, 3For i = 0 To rs1.RecordCount - 1
    rs2.AddNew
    rs2.Fields("mc") = rs1.Fields("mc")
    rs2.Fields("memo") = rs1.Fields("memo")rs2.Update
    rs1.MoveNext
    Next
    End Sub
      

  2.   

    用两个Recordset,一个读一个写。
      

  3.   

    Access存放binary数据的字段类型应该是OEL吧。用一个连接,通过inser into语句是可以实现两个数据库之间的数据导入的。Option Explicit
        Dim cn As ADODB.ConnectionPrivate Sub Form_Load()
        Set cn = New ADODB.Connection
        cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
            "Data Source=" & App.Path & "\db1.mdb;" & _
            "Persist Security Info=False"
    End SubPrivate Sub cmdInto_Click()
        Dim Sql As String
        Sql = "INSERT INTO [E:\A.mdb].tb_word " & _
            "SELECT word From tb_word " & _
            "WHERE word_id not in (SELECT word_id from tb_word in 'E:\A.mdb')"
        cn.Execute Sql
    End Sub
      

  4.   

    Private Sub Command21_Click()
    Dim db As New ADODB.Connection
    db.ConnectionString = "provider=microsoft.jet.oledb.4.0;" & "data source=f:\a.mdb"
    db.Open
    db.Execute "insert into UserTable in '" & "f:\b.mdb' select * from UserTable"'将a.mdb库中的表UserTable导出到b.mdb库中的表UserTable
    MsgBox "成功"
    End Sub