From 108ee9cd2e2b77dd033d48a0404b48d29dc09b39 Mon Sep 17 00:00:00 2001 From: Jeff Davis Date: Tue, 9 Sep 2014 14:50:24 -0700 Subject: [PATCH] LP#1367458: Make acq.funding_source.code unique per owner, rather than globally Signed-off-by: Jeff Davis --- Open-ILS/src/sql/Pg/200.schema.acq.sql | 3 ++- .../XXXX.schema.acq-funding-source-code-once-per-owner.sql | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq-funding-source-code-once-per-owner.sql diff --git a/Open-ILS/src/sql/Pg/200.schema.acq.sql b/Open-ILS/src/sql/Pg/200.schema.acq.sql index 91204a48ed..1c2ff803e6 100644 --- a/Open-ILS/src/sql/Pg/200.schema.acq.sql +++ b/Open-ILS/src/sql/Pg/200.schema.acq.sql @@ -154,7 +154,8 @@ CREATE TABLE acq.funding_source ( name TEXT NOT NULL, owner INT NOT NULL REFERENCES actor.org_unit (id) DEFERRABLE INITIALLY DEFERRED, currency_type TEXT NOT NULL REFERENCES acq.currency_type (code) DEFERRABLE INITIALLY DEFERRED, - code TEXT UNIQUE, + code TEXT, + CONSTRAINT funding_source_code_once_per_owner UNIQUE (code,owner), CONSTRAINT funding_source_name_once_per_owner UNIQUE (name,owner) ); diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq-funding-source-code-once-per-owner.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq-funding-source-code-once-per-owner.sql new file mode 100644 index 0000000000..8a6895a098 --- /dev/null +++ b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq-funding-source-code-once-per-owner.sql @@ -0,0 +1,8 @@ +BEGIN; + +SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version); + +ALTER TABLE acq.funding_source DROP CONSTRAINT funding_source_code_key; +CREATE UNIQUE INDEX funding_source_code_once_per_owner ON acq.funding_source (code,owner); + +COMMIT; -- 2.11.0