Note that there are some explanatory texts on larger screens.

plurals
  1. POOne-way database sync to MySQL
    primarykey
    data
    text
    <p>I have an VFP based application with a directory full of DBFs. I use ODBC in .NET to connect and perform transactions on this database. I want to mirror this data to mySQL running on my webhost. </p> <p>Notes:</p> <ul> <li>This will be a one-way mirror only. VFP to mySQL</li> <li>Only inserts and updates must be supported. Deletes don't matter</li> <li>Not all tables are required. In fact, I would prefer to use a defined SELECT statement to only mirror psuedo-views of the necessary data</li> <li>I do not have the luxury of a "timemodified" stamp on any VFP records. </li> <li>I don't have a ton of data records (maybe a few thousand total) nor do I have a ton of concurrent users on the mySQL side, want to be as efficient as possible though. </li> </ul> <p>Proposed Strategy for Inserts (doesn't seem that bad...):</p> <ul> <li>Build temp table in mySQL, insert all primary keys of the VFP table/view I want to mirror</li> <li>Run "SELECT primaryKey from tempTable not in (SELECT primaryKey from mirroredTable)" on mySQL side to identify missing records</li> <li>Generate and run the necessary INSERT sql for those records</li> <li>Blow away the temp table</li> </ul> <p>Proposed Strategy for Updates (seems really heavyweight, probably breaks open queries on mySQL dropped table):</p> <ul> <li>Build temp table in mySQL and insert ALL records from VFP table/view I want to mirror</li> <li>Drop existing mySQL table</li> <li>Alter tempTable name to new table name</li> </ul> <p>These are just the first strategies that come to mind, I'm sure there are more effective ways of doing it (especially the update side). </p> <p>I'm looking for some alternate strategies here. Any brilliant ideas?</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload