dbTalk Databases Forums  

does a table always need a PK?

comp.databases.theory comp.databases.theory


Discuss does a table always need a PK? in the comp.databases.theory forum.



Reply
 
Thread Tools Display Modes
  #41  
Old   
Leandro Guimarăes Faria Corsetti Dutra
 
Posts: n/a

Default Re: does a table always need a PK? - 08-27-2003 , 06:21 AM






On Wed, 27 Aug 2003 08:44:11 +0000, Lee Fesperman wrote:

Quote:
FirstSQL/J is not yet compliant with all of Codd's 12 Rules. However, we are improving
in that area and are the only DBMS vendor dedicated to relational fidelity. It's on our
to-do list!
Great! Do you have a timeline for Codd's 12 rules, then for RMv2,
then for RM/T? It's a tall order... anyway, for whatever it's worth, I
think I'll give you a place at
http://dmoz.org./Computers/Software/...plementations/.

Then we could have competition on merits: D4 against FirstSQL...
I must confess I'd be hard pressed to choose between a D and a portable
RM/T... perhaps the first to GPL its product would win me!


--
_ Leandro GuimarĂ£es Faria Corsetti Dutra +41 (21) 648 11 34
/ \ http://br.geocities.com./lgcdutra/ +41 (78) 778 11 34
\ / Answer to the list, not to me directly! +55 (11) 5686 2219
/ \ Rate this if helpful: http://svcs.affero.net/rm.php?r=leandro



Reply With Quote
  #42  
Old   
Heikki Tuuri
 
Posts: n/a

Default Re: does a table always need a PK? - 08-27-2003 , 07:03 AM






Tony,

"Tony Douglas" <tonyisyourpal (AT) netscape (DOT) net> kirjoitti viestissä
news:bcb8c360.0308270250.40de43a6 (AT) posting (DOT) google.com...
Quote:
Hello,

"Heikki Tuuri" <Heikki.Tuuri (AT) innodb (DOT) com> wrote

Yes. But a "DBMS" is a vague concept and I do not have time to define
"Heikki Tuuri -DBMS".

Questions that spring to mind :
a) How can someone
writing/supporting/selling/extending/whatever-InnoDB's-relationship-to-MySql
-might-be
Quote:
honestly say a DBMS is a vague concept ?
please give a formal definition of a "DBMS". In the style of mathematics. It
is like writing a formal definition what an "operating system" is. Or a
formal definition what a "horse" is.

....
Quote:
- Tony
Best regards,

Heikki Tuuri
Innobase Oy
http://www.innodb.com
Foreign keys, transactions, and row level locking for MySQL
InnoDB Hot Backup - a hot backup tool for MySQL




Reply With Quote
  #43  
Old   
Heikki Tuuri
 
Posts: n/a

Default Re: does a table always need a PK? - 08-27-2003 , 07:04 AM



Lee,

"Lee Fesperman" <firstsql (AT) ix (DOT) netcom.com> kirjoitti viestissä
news:3F4C6EC1.5FEA (AT) ix (DOT) netcom.com...
Quote:
Heikki Tuuri wrote:
....
Lee, of course, has a commercial interest in claiming that 'a/the
relational
model' is crystal clear. He tries to market FirstSQL on that basis.

"* FirstSQL/J Object/Relational DBMS "

By the way, FirstSQL probably is not Codd-12-relational? Why do you
claim it
to be an 'object/relational' database then? Is it 'Lee
Fesperman -relational'?

FirstSQL/J is not yet compliant with all of Codd's 12 Rules. However, we
are improving
in that area and are the only DBMS vendor dedicated to relational
fidelity. It's on our
to-do list!
I thought that also Dataphor is dedicated to some version of 'relational
fidelity'. Do you dispute that?

Could we say that your database is an 'object/TODO-Codd-12-relational'
database?

Quote:
Codd's 12 Rules do not define the relational model; they are guidelines
for users to
evaluate the relational compliance of their DBMSs. For more definitive
information, see
Codd's papers beginning with the 1970 article through his 1979 "Extending
the Database
Relational Model to Capture More Meaning".
Good. Please show us where the following are formally defined by Codd?

http://www.cis.ohio-state.edu/~sgomo...ddsrules.html:

"
9. Logical Data Independence
Application programs and terminal activities remain logically unimpaired
when information preserving changes of any kind that theoretically permit
unimpairment are made to the base tables.
"

Or:

"
6. View Updating Rule
All views that are theoretically updateable are also updateable by the
system.
"
?

....
Quote:
--
Lee Fesperman, FirstSQL, Inc. (http://www.firstsql.com)
================================================== ============
* The Ultimate DBMS is here!
* FirstSQL/J Object/Relational DBMS (http://www.firstsql.com)
Best regards,

Heikki Tuuri
Innobase Oy
http://www.innodb.com
Foreign keys, transactions, and row level locking for MySQL
InnoDB Hot Backup - a hot backup tool for MySQL




Reply With Quote
  #44  
Old   
Bob Badour
 
Posts: n/a

Default Re: does a table always need a PK? - 08-27-2003 , 09:25 AM



"Leandro Guimarăes Faria Corsetti Dutra" <lgcdutra (AT) terra (DOT) com.br> wrote in
message newsan.2003.08.27.11.16.37.585838 (AT) terra (DOT) com.br...
Quote:
Em Tue, 26 Aug 2003 20:21:16 -0400, Bob Badour escreveu:

See RM V2.


http://search.barnesandnoble.com/boo...bn=0201141922&
itm=1

The book is selling too well: "Not Currently Available.

Give the guy a break; he is dead after all. Try the library or one of
the
used book dealers.

Being dead is not an excuse... actually I have the book, and
it is not so great.
I agree there are many things in RM V2 that I find very controversial. It is
certainly not the work of outright, undeniable genius the 1970 paper was.
But at only one work of outright, undeniable genius, Codd is way ahead of
the vast bulk of humanity.

Even still, I find it unforgivable for someone to implement a
self-proclaimed rdbms and not have any familiarity with this book. It is
unforgivable for someone to claim an opinion on what constitutes an rdbms
and not even know what 4VL is.


Quote:
If you look enough, perhaps in the Relation Database
volumes, Date himself has a negative review of it.
I would also find it unforgivable for someone to implement a self-proclaimed
rdbms without having read the replies to the book. But we all have to start
somewhere, Heikki needs to read RM V2 before he will understand those
replies.


Quote:
It was a trial at
digesting the relational principles and corolaries, plus some assorted
ideals about DBMSs, to PHBs in charge of DBMS systems development.

_TTM_ IMNSHO is a better foundation for RDBMS guidelines.
I agree. However, it is not the only work one must know. For instance, I
would find it equally unforgivable for someone to claim to have written an
rdbms without any familiarity with Jim Gray's work either; even if one
decides not to implement a transaction based system, one needs to know what
a transaction based system provides before making the decision.




Reply With Quote
  #45  
Old   
Tony Douglas
 
Posts: n/a

Default Re: does a table always need a PK? - 08-27-2003 , 12:54 PM



Hello,

"Heikki Tuuri" <Heikki.Tuuri (AT) innodb (DOT) com> wrote

Quote:
please give a formal definition of a "DBMS". In the style of mathematics. It
is like writing a formal definition what an "operating system" is. Or a
formal definition what a "horse" is.

Hmmm... I have issues with that as an answer.

- A definition of a DBMS in the style of mathematics. Or, put another
way, a formal mathematical definition of Oracle. An interesting
project, that. (This immediately makes me think of continuation
semantics, to handle the time progression side of things.) Not a
trivial undertaking, but one that may be well worth someone's while
doing. It would also be one heck of a long post.

- Formal definitions of operating systems... There was a fair bit of
work done on this in the mid- to late-1980s, ISTR. Handling time
properly was a real issue. One thesis I know of that started off as a
formal def'n of an operating system had a six month diversion into
representing and handling time turn into a thesis about representing
and handling time, put it that way. The next problem is that operating
systems work in the world of side effects when you're at the device
driver level, and mathematics doesn't have a lot useful to say about
that (hence monads in Haskell and the imperative bits of Standard ML
to deal with I/O amongst other things). Maybe someone out there has an
interesting pointer into the world of operational semantics for such
things ?

- Wouldn't the formal definition of horse simply make reference to the
genetic make-up of an equine beast ?

OTOH, if we're given a mathematically sound definition of what a
relation is, and what the operators on relations do, then we at least
have a starting point for what an RDBMS is (that is, a system which
manages databases consisting of relations - weak but accurate) Of
course, things get hairier when we go with multiple concurrent
updating users and we have to worry about synchronising access to
shared resources, deadlock management, transaction handling (spit),
etc. etc. Given all the effort that would go into those things, you'd
think we'd save ourselves some effort by sticking with those ol'
mathematically defined relations & relational operators rather than
reinventing that wheel too, wouldn't you ?

- Tony


Reply With Quote
  #46  
Old   
Heikki Tuuri
 
Posts: n/a

Default Re: does a table always need a PK? - 08-27-2003 , 01:07 PM



Tony,

"Tony Douglas" <tonyisyourpal (AT) netscape (DOT) net> kirjoitti viestissä
news:bcb8c360.0308270954.52398488 (AT) posting (DOT) google.com...
Quote:
Hello,

"Heikki Tuuri" <Heikki.Tuuri (AT) innodb (DOT) com> wrote

please give a formal definition of a "DBMS". In the style of
mathematics. It
is like writing a formal definition what an "operating system" is. Or a
formal definition what a "horse" is.

Hmmm... I have issues with that as an answer.

- A definition of a DBMS in the style of mathematics. Or, put another
way, a formal mathematical definition of Oracle. An interesting
project, that. (This immediately makes me think of continuation
semantics, to handle the time progression side of things.) Not a
trivial undertaking, but one that may be well worth someone's while
doing. It would also be one heck of a long post.

- Formal definitions of operating systems... There was a fair bit of
work done on this in the mid- to late-1980s, ISTR. Handling time
properly was a real issue. One thesis I know of that started off as a
formal def'n of an operating system had a six month diversion into
representing and handling time turn into a thesis about representing
and handling time, put it that way. The next problem is that operating
systems work in the world of side effects when you're at the device
driver level, and mathematics doesn't have a lot useful to say about
that (hence monads in Haskell and the imperative bits of Standard ML
to deal with I/O amongst other things). Maybe someone out there has an
interesting pointer into the world of operational semantics for such
things ?

- Wouldn't the formal definition of horse simply make reference to the
genetic make-up of an equine beast ?

OTOH, if we're given a mathematically sound definition of what a
relation is, and what the operators on relations do, then we at least
have a starting point for what an RDBMS is (that is, a system which
manages databases consisting of relations - weak but accurate) Of
course, things get hairier when we go with multiple concurrent
updating users and we have to worry about synchronising access to
shared resources, deadlock management, transaction handling (spit),
etc. etc. Given all the effort that would go into those things, you'd
think we'd save ourselves some effort by sticking with those ol'
mathematically defined relations & relational operators rather than
reinventing that wheel too, wouldn't you ?
yes, you understood what I meant. It is rather easy to formalize that the
query language must be able to perform the operations of the relational
algebra, since the relational algebra is a simple mathematical system. But a
DBMS is a kind of operating system, too. And it is hard to define formally
what required concurrency, backup, sysadmin, communications, etc. handling
capabilities are for a program to be called a DBMS.

About the horse: if we genetically engineer a horse and add DNA from a frog,
at what point does the creature transform from a horse to a froghorse?

Quote:
- Tony
Best regards,

Heikki Tuuri
Innobase Oy
http://www.innodb.com
Foreign keys, transactions, and row level locking for MySQL
InnoDB Hot Backup - a hot backup tool for MySQL




Reply With Quote
  #47  
Old   
Leandro Guimarăes Faria Corsetti Dutra
 
Posts: n/a

Default Re: does a table always need a PK? - 08-27-2003 , 01:56 PM



On Wed, 27 Aug 2003 13:21:19 +0200, Leandro GuimarĂ£es Faria Corsetti
Dutra wrote:

Quote:
I'll give you a place at
http://dmoz.org./Computers/Software/...plementations/.
This is done... now you will win a Favorite placing if you tell
me you actually plan to implement at least a setting to process only
relations, not bags...


--
_ Leandro GuimarĂ£es Faria Corsetti Dutra +41 (21) 648 11 34
/ \ http://br.geocities.com./lgcdutra/ +41 (78) 778 11 34
\ / Answer to the list, not to me directly! +55 (11) 5686 2219
/ \ Rate this if helpful: http://svcs.affero.net/rm.php?r=leandro



Reply With Quote
  #48  
Old   
Christopher Browne
 
Posts: n/a

Default Re: does a table always need a PK? - 08-27-2003 , 03:00 PM



Centuries ago, Nostradamus foresaw when "Bob Badour" <bbadour (AT) golden (DOT) net> would write:
Quote:
Even still, I find it unforgivable for someone to implement a
self-proclaimed rdbms and not have any familiarity with this book. It is
unforgivable for someone to claim an opinion on what constitutes an rdbms
and not even know what 4VL is.
I haven't seen any opinion being expressed, on the "MySQL side," as to
what they think constitutes an RDBMS.

Certainly nothing resembling the "Peano Axioms" that the MySQL guy
seems to think _everyone else_ should consider as the level of
discourse.
--
"cbbrowne","@","ntlug.org"
http://cbbrowne.com/info/
"misfortune, n. The kind of fortune that never misses."
-- Ambrose Bierce, The Devil's Dictionary


Reply With Quote
  #49  
Old   
Bob Badour
 
Posts: n/a

Default Re: does a table always need a PK? - 08-27-2003 , 04:01 PM



"Christopher Browne" <cbbrowne (AT) acm (DOT) org> wrote

Quote:
Centuries ago, Nostradamus foresaw when "Bob Badour" <bbadour (AT) golden (DOT) net
would write:
Even still, I find it unforgivable for someone to implement a
self-proclaimed rdbms and not have any familiarity with this book. It is
unforgivable for someone to claim an opinion on what constitutes an
rdbms
and not even know what 4VL is.

I haven't seen any opinion being expressed, on the "MySQL side," as to
what they think constitutes an RDBMS.
You haven't seen any opinion expressed by Heikki that MySQL constitutes an
RDBMS? Or an opinion expressed by Heikki whether FirstSQL or Oracle
constitutes an RDBMS? All I can suggest is to pay closer attention.




Reply With Quote
  #50  
Old   
Bob Badour
 
Posts: n/a

Default Re: does a table always need a PK? - 08-27-2003 , 04:47 PM



"Heikki Tuuri" <Heikki.Tuuri (AT) innodb (DOT) com> wrote

Quote:
Lee,

"Lee Fesperman" <firstsql (AT) ix (DOT) netcom.com> kirjoitti viestissä
news:3F4C6EC1.5FEA (AT) ix (DOT) netcom.com...
Heikki Tuuri wrote:
...
Lee, of course, has a commercial interest in claiming that 'a/the
relational
model' is crystal clear. He tries to market FirstSQL on that basis.

"* FirstSQL/J Object/Relational DBMS "

By the way, FirstSQL probably is not Codd-12-relational? Why do you
claim it
to be an 'object/relational' database then? Is it 'Lee
Fesperman -relational'?

FirstSQL/J is not yet compliant with all of Codd's 12 Rules. However, we
are improving
in that area and are the only DBMS vendor dedicated to relational
fidelity. It's on our
to-do list!

I thought that also Dataphor is dedicated to some version of 'relational
fidelity'. Do you dispute that?

Could we say that your database is an 'object/TODO-Codd-12-relational'
database?

Codd's 12 Rules do not define the relational model; they are guidelines
for users to
evaluate the relational compliance of their DBMSs. For more definitive
information, see
Codd's papers beginning with the 1970 article through his 1979
"Extending
the Database
Relational Model to Capture More Meaning".

Good. Please show us where the following are formally defined by Codd?
Do you comprehend written english? This has already been addressed. The
formal definition of the relational model is Codd's 1970 paper. If you want
formal definitions, look in the 1970 paper.

Rules of thumb need not have formal definitions. What is the formal
definition of separation of concerns? What is the formal definition of
elegance? What is the formal definition of mathematics? What is the formal
definition of the scientific method? What is the formal definition of
formal?

Making petulant demands for formal definitions that are neither required nor
desired is nothing more than pedantic sophistry. Such sophistry might
impress an ignorant consumer, and no doubt that is your intention.




Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.