1. Using single numeric key (DocNo) will make join between your Master and Details table work faster!
2. Getting FormulaID when just retrieving details will be slower as it will require the join to the Master.
Now, what is more important for you? Join between two tables to work faster or getting the attribute/key of Master record from Details table without Master table lookup?
How often you need to get Details data bypassing Master table? Is it really required in your system?
As I said in my previous post, I do prefer use of numeric (int or bigint) PK. It will make joins (based on them) work faster and using joins between tables is quite common in RDBs :-D.
From another hand how often do you really need to bypass you "parent" table while getting data from "child" table? For example:
you have Product table with ProductName as one of its columns. Also, you have table ProductParts holding details of the product parts.
Would you need to display the ProductParts details without displaying which product they belongs to? Probably not. Does it mean you need to have ProductName stored in the ProductParts as well?
You can see the above as simple question of data normalisation...
"The only true wisdom is in knowing you know nothing"
"O skol'ko nam otkrytiy chudnyh prevnosit microsofta duh!":-D
(So many miracle inventions provided by MS to us...)How to post your question to get the best and quick help