Re: Database design, Keys and some other things
From: mAsterdam <mAsterdam_at_vrijdag.org>
Date: Fri, 30 Sep 2005 10:06:02 +0200
Message-ID: <433cf1d0$0$11072$e4fe514c_at_news.xs4all.nl>
>
>
> Perhaps we have different definitions of surrogate keys. The VIN
> may be something that's not a surrogate key in database A, but
> it's certainly a surrogate key in *some* database, and hence I
> don't see any particular difference between it and any other
> made-up identifiers. SOMEone, some database, made up the VIN
> out of thin air; we could well say they "implemented [it] to get
> [their] system working." So I still don't see the distinction
> you're drawing here.
>
>
> I don't believe I ever took that position.
>
> However, there is a definite trap in this general area, which
> is the trap of thinking that there is anything profound to
> be said about the relationship between the internal and the
> external predicate. That relationship, between the database
> and the world it models, exists only in the minds of the users
> of the system, and it is wholly an illusion, if you will.
> This is an important point, and it is also a philosophical one.
Received on Fri Sep 30 2005 - 10:06:02 CEST
Date: Fri, 30 Sep 2005 10:06:02 +0200
Message-ID: <433cf1d0$0$11072$e4fe514c_at_news.xs4all.nl>
Marshall Spight wrote:
> JOG wrote:
[snip]
>>A VIN exists in the real world, and as such is part of the proposition >>we are encoding. A surrogate key is an artifice of the database, does >>not exist in the world you are modelling, and is implemented to get >>your system working. This seems a very clear distinction to me.
>
>
> Perhaps we have different definitions of surrogate keys. The VIN
> may be something that's not a surrogate key in database A, but
> it's certainly a surrogate key in *some* database, and hence I
> don't see any particular difference between it and any other
> made-up identifiers. SOMEone, some database, made up the VIN
> out of thin air; we could well say they "implemented [it] to get
> [their] system working." So I still don't see the distinction
> you're drawing here.
There is an important difference. Unless we are talking about
that specific "*some*" database, the VIN is /not/ a surrogate key in
the database at hand.
A while ago we had some discussion as to wether an url is a key
or not. My stance on that was: only if the content is in our
database the url may be a key, so - in general: an url is not a key.
There is a similar distinction to be made here.
In general, a VIN is not a surrogate key (though it
is in the "*some*" database - only there).
>
>>I disagree >>wholeheartedly with you that the philosophy of what information >>actually is, and the consequences that may have for encoding and >>manipulation of it, is irrelevant to database theories.
>
>
> I don't believe I ever took that position.
>
> However, there is a definite trap in this general area, which
> is the trap of thinking that there is anything profound to
> be said about the relationship between the internal and the
> external predicate. That relationship, between the database
> and the world it models, exists only in the minds of the users
> of the system, and it is wholly an illusion, if you will.
> This is an important point, and it is also a philosophical one.
Received on Fri Sep 30 2005 - 10:06:02 CEST