case gurus??

From: <shiao_at_stsci.edu>
Date: Fri, 3 Sep 1993 15:36:48 GMT
Message-ID: <1993Sep3.103648.1_at_stsci.edu>


Here is the erd diagram!!


						|A	|
						|	|
						|	|
						|	|
						---------
						   \|/
                                                    |

|
|
|

|

|
-------------------------------- | B | | | | | ---------- | | | C | | | | | | | ---------- | | | ---------------------------------

A must belong to one and only one C
C may have one or more A's

A has a uid made up of a one attribute called "a_id" and its relationship to C.

C has a uid made up of one attribute called "c_id".

B has a uid made up of one attribute called "b_id".

B is the super-type for C.

When performing the following:

  1. fast path table mapping, generating only the A and C tables.
  2. Default database design.

The resulting attributes for A are "A_id", "C_shortname_B_id", and "C_shortname_B_id_AC_belong_to".

My questions are???

  1. Why did it use the uid of the supertype(B) when one was defined for the subtype (C).
  2. Why did CASE put two attributes in which have exactly the same data in them. One to resolve the foreign key and the other to resolve the relationship and subsequently the uid for A. I am a little confused as to what is happening, any clarification would be greatly appreciated. Should I just delete one of the attributes later on and not worry about it.

But the first question still remains.

According to the printout generated by the "default database design" this is not the way it should work (see below text from printout, #5). I have called ORACLE on this and am still waiting to get an explanation.

Anyone have any ideas?

Bernie
shiao_at_stsci.edu



TEXT FROM PRINTOUT: Column names are derived from the following rules:
  1. For columns generated from attributes in source entities specified in the table, or for their sub/super types : First try : Columnprefix_AttributeName Second try : Columnprefix_EntityShortName_AttributeName (if the first option is not unique)
  2. For columns generated from attributes in the unique ID of related entities (that is, foreign keys) : First try : Columnprefix_RelatedEntityShortName_AttributeName Second try : Columnprefix_RelatedEntityShortName_AttributeName_RelationshipName (if the first option is not unique)

When resolving relationships, unique identifiers are extracted obeying the following rules:

3. If the entity at the other end of the relationship has a unique

   identifier, then this will be used.
4. If no unique identifier is found, the super types of the entity

   (if any) will be examined in ascending    order, finishing with the outermost super entity and if one is    found then it will be used.
5. If no unique identifier is found, a dummy column is created and an

   error message is displayed. Received on Fri Sep 03 1993 - 17:36:48 CEST

Original text of this message