Microsoft KB Archive/110588

From BetaArchive Wiki

Article ID: 110588

Article Last Modified on 10/29/2003



APPLIES TO

  • Microsoft Visual Basic 3.0 Professional Edition
  • Microsoft Visual Basic 3.0 Professional Edition



This article was previously published under Q110588

SUMMARY

A physical table in a database has records (rows) and fields (columns). A single record contains a single row of field values.

To copy a record in one table to another table, you need to copy all the fields in the source record to the corresponding fields in the destination record. You can do this by using the Value property of the Fields collection, or by using an SQL statement.

MORE INFORMATION

How to Copy a Record Using SQL

You can use the SQL Insert Into statement to copy specified records from one table into another:

   INSERT INTO ToTableName SELECT * FROM FromTableName
                

You can also add a WHERE clause at the end to add any selected records:

   INSERT INTO ToTableName SELECT FromTableName.* FROM FromTableName
     WHERE Key = 'Key'
                

How to Use SQL Statements in Visual Basic

Here's an example showing how to use the SQL statements in Visual Basic code:

  Dim db As database, ds As dynaset
  Set db = OpenDatabase("C:\VB3\FOXTEST", False, False, "foxpro 2.5;")
  db.Execute "INSERT INTO ToTableName SELECT FromTableName.*
     FROM FromTableName"
                

How to Copy a Record Using the Fields Collection and Value Property

The following loop copies all the fields in the current record in table 1 to the corresponding fields in the current record in table 2:

   Dim MyDB As Database, Tbl1 As Table, Tbl2 As Table
   Set MyDB = OpenDatabase("BIBLIO.MDB")     ' Open Database.
   Set Tbl1 = MyDB.OpenTable("Publishers")     ' Open Table.
   Set Tbl2 = ...

   For i = 0 to Tbl1.Fields.Count - 1
      Tbl2(Tbl1.Fields(i).Name).Value = Tbl1.Fields(i).Value
   Next
                

The above loop assumes that the fields in table 2 are identical to those in table 1.


Additional query words: 3.00

Keywords: KB110588