You should know what the primary key and foreign key constraints are before you even start typing at your keyboard. You *do* design your databases before you start defining them in EM, right? ;)
Now, there are legitimate debates as to whether you should create surrogate keys for other key values (e.g. identity columns). Sometimes, the use of a surrogate key isn't immediately apparent, so they may not be defined until later, but that aside, you should have a pretty good idea what your key values are in the tables which model your business entitites, and the relationships between those tables, before you even start typing their definitions in.
Therefore, since you know them already, you can define these keys and constraints as you are defining the tables, well before any data is loaded into them.
IMO.
Jeff Mason
Custom Apps, Inc.
www.custom-apps.com