Hello! On Thursday 26 February 2009 18:53:18 Jay A. Kreibich wrote: > I agree. The only major addition I'd like to see is full support for > referential integrity. I know you can fake it, to a degree, with > triggers, but I'd still like to see it baked into the database engine > itself.
But why? I did use only triggers for referential integrity checks in PostgreSQL because trigger can return user-friendly description on national lang. As example from SQLIte-based project for russian users: CREATE TRIGGER users_update_before before update on users begin select RAISE (ABORT,'Нельзя изменять идентификатор') WHERE OLD.id != NEW.id; SELECT RAISE(ABORT, 'Указан несуществующий регион.') WHERE NEW.region_id != '' AND (select ROWID from regions where id=NEW.region_id) IS NULL; SELECT RAISE(ABORT, 'Пользователь с указанным именем уже существует! Пожалуйста, придумайте для этого пользователя другое имя.') WHERE (SELECT ROWID FROM users WHERE nickname = NEW.nickname and rowid!=NEW.rowid) IS NOT NULL; end; Standart foreign key error message is not good for users. User does not understand message such as "Foreign key error: ... key ... table...". Best regards. _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users