| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> comp.databases.theory -> Re: Abstract identifiers, logical pointers, or foreign keys considered not enough
Lauri Pietarinen wrote:
> Costin Cozianu wrote:
>
>> Lauri Pietarinen wrote: >> >>> >>> In my mind the rational for using surrogates in databases is that >>> they insulate us from cascading changes in the case that we have to >>> change the primary key. >>> >> But this is a physical level concern. The table holding the foreign >> key, may just physically hold a pointer to the record from where it >> will get the (foreign key/candidate key)value. Then an "ON UPDATE >> CASCADE" will be just as easy as if there was nothing to cascade.
Not at all, if this mechanism is part of the physical implementation level.
>> Plus the scenario you described is not quite kosher. In general you >> don;t allow users to update the logical identifier of an entity. For >> example he mistype his license number, so you want to update that >> information in all different tables.
>> >> Regardless of the problem related to changing the identity of >> entities, in the case I presented, introducing a PAYMENT_ID is a >> strange way to plumb the inadequacy of a type system.
Table types are data types, in other words it is not profitable at all to have first class types and second class types.
In any case, in the example above it was about a "data type" i.e. a the type of a value to be put in a column.
> Lauri
>
Costin Received on Sun Oct 12 2003 - 10:05:43 CDT
![]() |
![]() |