ActiveRecord Save Primary Key Issue...

What good is a table that has no primary key? In 20 years of designing
databases large and small I cannot recall a single case where it would have
been appropriate having a table without primary key.

Just consider the following scenario: for some reason (eg programmatic error)
an identical record is inserted twice. You want to get rid of one copy.
Unless you use a backend that generates some sort of unique feature (eg OID
in PostgreSQL) you will find that you can't.


Oracle Applications does not use referential integrity amongst its
tables, for one. The overhead for RI in some cases can be...excessive.
Which is one thing, in an odd way, that probably *helps* MySQL be a
tolerable DBMS behind applications, despite its deficiencies and
warts. Most web app developers seem to implement and enforce RI in
their applications...