The strongest database in terms of SQL92/99 compliance int he open source realm is probably Postgresql, followed VERY closely by Firebird.
foreign keys are the best way to maintain related information in a database. both firebird and postgresql support fk relations quite well.
One of the impressive things about Postgresql is that it not only supports virtually everything in the SQL spec (with the exception of nested transactions) it supports those commands, both DML and DDL inside transactions. (DML = data manipulation language = select/delete/update/insert, DDL = Data Description Language = create table, alter table, create index etc...) except create database, which makes sense, since transactions run in databases.
So, you can do this:
begin;
create table newtable;
insert into newtable (select * from oldtable);
drop oldtable;
create index ...
(have an oh crap moment, and need to reverse it all)
rollback;
and all the changes are gone.