mirror of
https://gitlab.com/davical-project/davical.git
synced 2026-07-24 12:29:33 +00:00
39 lines
2.0 KiB
PL/PgSQL
39 lines
2.0 KiB
PL/PgSQL
|
|
-- Add some more cascading updates and deletes.
|
|
-- For databases created before PostgreSQL 8.0.
|
|
|
|
BEGIN;
|
|
SELECT check_db_revision(1,2,2);
|
|
|
|
ALTER TABLE role_member DROP CONSTRAINT "$1";
|
|
ALTER TABLE role_member ADD CONSTRAINT "$1" FOREIGN KEY (role_no) REFERENCES roles(role_no) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE;
|
|
ALTER TABLE role_member DROP CONSTRAINT "$2";
|
|
ALTER TABLE role_member ADD CONSTRAINT "$2" FOREIGN KEY (user_no) REFERENCES usr(user_no) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE;
|
|
|
|
ALTER TABLE session DROP CONSTRAINT "$1";
|
|
ALTER TABLE session ADD CONSTRAINT "$1" FOREIGN KEY (user_no) REFERENCES usr(user_no) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE;
|
|
|
|
ALTER TABLE relationship DROP CONSTRAINT "$1";
|
|
ALTER TABLE relationship ADD CONSTRAINT "$1" FOREIGN KEY (from_user) REFERENCES usr(user_no) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE;
|
|
ALTER TABLE relationship DROP CONSTRAINT "$2";
|
|
ALTER TABLE relationship ADD CONSTRAINT "$2" FOREIGN KEY (to_user) REFERENCES usr(user_no) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE;
|
|
|
|
ALTER TABLE usr_setting DROP CONSTRAINT "$1";
|
|
ALTER TABLE usr_setting ADD CONSTRAINT "$1" FOREIGN KEY (user_no) REFERENCES usr(user_no) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE;
|
|
|
|
ALTER TABLE tmp_password DROP CONSTRAINT "$1";
|
|
ALTER TABLE tmp_password ADD CONSTRAINT "$1" FOREIGN KEY (user_no) REFERENCES usr(user_no) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE;
|
|
|
|
ALTER TABLE caldav_data DROP CONSTRAINT "$1";
|
|
ALTER TABLE caldav_data ADD CONSTRAINT "$1" FOREIGN KEY (user_no) REFERENCES usr(user_no) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE;
|
|
ALTER TABLE caldav_data DROP CONSTRAINT "$2";
|
|
ALTER TABLE caldav_data ADD CONSTRAINT "$2" FOREIGN KEY (logged_user) REFERENCES usr(user_no) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE;
|
|
|
|
ALTER TABLE property DROP CONSTRAINT "$1";
|
|
ALTER TABLE property ADD CONSTRAINT "$1" FOREIGN KEY (changed_by) REFERENCES usr(user_no) ON UPDATE CASCADE;
|
|
|
|
SELECT new_db_revision(1,2,3, 'Mars' );
|
|
COMMIT;
|
|
ROLLBACK;
|
|
|