> All three of these implementation issues are, at least in theory,
> surmountable. For example, Sybase overcame problems (1) and (3) by creating
> an automated, system-controlled hash key based on the table's real key. This
> was a solution endorsed by E.F. Codd in the mid-90's when he came to regret
> his promotion of the "Primary Key" idea in the SQL standard.
I've often wondered if the OID was intended to be something similar.
You specify:
CREATE TABLE abc (key varchar(120) PRIMARY KEY);CREATE TABLE bcd (key varchar(120) REFERENCES abc);
PostgreSQL was actually supposed to create:
abc(oid oid, key varchar(120) PRIMARY KEY);bcd(key oid REFERENCES abc(oid));
Then muck around with the queries to resolve the actual varchar() name
when required.