VBcoders Guest



Don't have an account yet? Register
 


Forgot Password?



Database Table Copy

by Shawn Jetton (1 Submission)
Category: Databases/Data Access/DAO/ADO
Compatability: Visual Basic 3.0
Difficulty: Beginner
Date Added: Wed 3rd February 2021
Rating: (3 Votes)

This code will copy all fields from all tables in a database and add them to another identical database.
My company has Rep submitting database reports all the time. I need to append the data from the reports database to a live database. At first I was running querys I had made in the database but our file structure changed and that was no long an option. This is about as simple as it gets but someone might find it useful.

Inputs
Call the function like this. AddData "C:\My Documents\Test\From.mdb", "C:\My Documents\Test\To.mdb"
Side Effects
None that I know of.

Rate Database Table Copy

Public Sub AddData(DataFrom As String, DataTo As String)
Dim dbFrom, dbTo As Database
Dim rsFrom, rsTo As Recordset
Set dbFrom = OpenDatabase(DataFrom)
Set dbTo = OpenDatabase(DataTo)
For n = 0 To dbFrom.TableDefs.Count - 1
    'This search out on table in your database
    If dbFrom.TableDefs(n).Attributes = 0 Then
      Set rsFrom = dbFrom.OpenRecordset(dbFrom.TableDefs(n).Name)
      Set rsTo = dbTo.OpenRecordset(dbTo.TableDefs(n).Name)
    End If
  
    'Loops through all fields in table and copies from dbFrom to dbTo.
    Do Until rsFrom.EOF
      rsTo.AddNew
      For i = 1 To rsTo.Fields.Count - 1
        If rsFrom.Fields(i) = "" Then GoTo hell
        rsTo.Fields(i) = rsFrom.Fields(i)
hell:
      Next i
      
      'This updates and moves to the next record in the from database
      rsTo.Update
      rsFrom.MoveNext
    Loop
Next n
dbFrom.Close
dbTo.Close
End Sub

Download this snippet    Add to My Saved Code

Database Table Copy Comments

No comments have been posted about Database Table Copy. Why not be the first to post a comment about Database Table Copy.

Post your comment

Subject:
Message:
0/1000 characters