If I am rebuilding a database from an existing database...would it be smarter to import the tables from the exisiting database or just go ahead and build new ones?
When rebuilding a database what would be the most important thing to remember?
The answer to question #1, as you probably expect, is: it depends. Generally, in most cases, you would probably be reusing at least some of the existing table structures. If the changes to the tables are not substantial, ie. adding one or two fields to support some new functiomality, it would probably be better just to import the structure of existing tables. By contrast you would be rebuilding from scratch where the relationships between tables change (, though there might be people who will tell you it is better just cancelling the relationships, and import the existing table structures ). Also, I would recommend building new tables when you are opting for a new naming scheme. There, you will likely have to rebuild your forms as well, as you will likely experience big problems trying to retrofit them to new names.
Question number #2: again that depends on the nature of the rebuild. If you have a database application that has been working well, and the changes are relatively minor, you will likely concentrate on the added functionalities. If however you are rebuilding more substantial pieces, then you need to understand first the changed schema. I would recommend first going over the table relationships in detail, map them out and test everything (new or old !), adding test data only after you have resolved existing issues. The one big thing that I hve learned in the school of hard knocks is :
Never leave unresolved issues when building new functional blocks ! Even when you know that processing will likely have to be changed when you add some other module, build only on code that works and works reliably. It is only when unit testing has no outstanding issues that you should add new functional blocks. Otherwise, you might find yourself forever chasing some monster or vice versa.
Good luck !
Best,
J.