I had an idea to create VB apps with a UDL file that can be set to access a certain different types of databases. Then create SQL code for each database and access them via Case statements to select the right SQL query to use. Store the type of database used in a global variable and use that to select the connection, the SQL statements, cursors used, etc. That way the user can start out with one database, migrate to another, set a switch and change a UDL file and start using a more powerful database. I might even put in code to do the migration for them. :)