Initial commit.
This commit is contained in:
16
sql/deprecated/11005_tbl_TCG_Language.sql
Normal file
16
sql/deprecated/11005_tbl_TCG_Language.sql
Normal file
@@ -0,0 +1,16 @@
|
||||
CREATE TABLE tcg.public.TCG_Language (
|
||||
language_id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY
|
||||
, name VARCHAR(250) NOT NULL
|
||||
, description VARCHAR(250) NOT NULL
|
||||
, created_on TIMESTAMP NOT NULL
|
||||
, created_by_user_id INT NOT NULL
|
||||
, CONSTRAINT FK_TCG_Language_created_by_user_id
|
||||
FOREIGN KEY (created_by_user_id)
|
||||
REFERENCES tcg.public.TCG_User(user_id)
|
||||
, updated_last_on TIMESTAMP
|
||||
, updated_last_by_user_id INT
|
||||
, change_set_id INT
|
||||
, CONSTRAINT FK_TCG_Language_change_set_id
|
||||
FOREIGN KEY (change_set_id)
|
||||
REFERENCES tcg.public.TCG_Change_Set(change_set_id)
|
||||
);
|
||||
15
sql/deprecated/11006_tbl_TCG_Language_Audit.sql
Normal file
15
sql/deprecated/11006_tbl_TCG_Language_Audit.sql
Normal file
@@ -0,0 +1,15 @@
|
||||
|
||||
CREATE TABLE tcg.public.TCG_Language_Audit (
|
||||
audit_id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY
|
||||
, language_id INT NOT NULL
|
||||
, CONSTRAINT FK_TCG_Language_Audit_language_id
|
||||
FOREIGN KEY (language_id)
|
||||
REFERENCES tcg.public.TCG_Language(language_id)
|
||||
, name_field VARCHAR(255) NOT NULL
|
||||
, value_prev TEXT
|
||||
, value_new TEXT
|
||||
, change_set_id INT NOT NULL
|
||||
, CONSTRAINT FK_TCG_Language_Audit_change_set_id
|
||||
FOREIGN KEY (change_set_id)
|
||||
REFERENCES tcg.public.TCG_Change_Set(change_set_id)
|
||||
);
|
||||
19
sql/deprecated/11101_tbl_TCG_MTG_Rarity.sql
Normal file
19
sql/deprecated/11101_tbl_TCG_MTG_Rarity.sql
Normal file
@@ -0,0 +1,19 @@
|
||||
CREATE TABLE tcg.public.TCG_MTG_Rarity (
|
||||
rarity_id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY
|
||||
, name VARCHAR(250) NOT NULL
|
||||
, colour_name VARCHAR(250) NOT NULL
|
||||
, price_ratio_min DECIMAL(6, 1)
|
||||
, price_ratio_max DECIMAL(6, 1)
|
||||
, active BOOLEAN NOT NULL DEFAULT TRUE
|
||||
, created_on TIMESTAMP NOT NULL
|
||||
, created_by_user_id INT NOT NULL
|
||||
, CONSTRAINT FK_TCG_MTG_Rarity_created_by_user_id
|
||||
FOREIGN KEY (created_by_user_id)
|
||||
REFERENCES tcg.public.TCG_User(user_id)
|
||||
, updated_last_on TIMESTAMP
|
||||
, updated_last_by_user_id INT
|
||||
, change_set_id INT
|
||||
, CONSTRAINT FK_TCG_MTG_Rarity_change_set_id
|
||||
FOREIGN KEY (change_set_id)
|
||||
REFERENCES tcg.public.TCG_Change_Set(change_set_id)
|
||||
);
|
||||
15
sql/deprecated/11102_tbl_TCG_MTG_Rarity_Audit.sql
Normal file
15
sql/deprecated/11102_tbl_TCG_MTG_Rarity_Audit.sql
Normal file
@@ -0,0 +1,15 @@
|
||||
|
||||
CREATE TABLE tcg.public.TCG_MTG_Rarity_Audit (
|
||||
audit_id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY
|
||||
, rarity_id INT NOT NULL
|
||||
, CONSTRAINT FK_TCG_MTG_Rarity_Audit_rarity_id
|
||||
FOREIGN KEY (rarity_id)
|
||||
REFERENCES tcg.public.TCG_MTG_Rarity(rarity_id)
|
||||
, name_field VARCHAR(255) NOT NULL
|
||||
, value_prev TEXT
|
||||
, value_new TEXT
|
||||
, change_set_id INT NOT NULL
|
||||
, CONSTRAINT FK_TCG_MTG_Rarity_Audit_change_set_id
|
||||
FOREIGN KEY (change_set_id)
|
||||
REFERENCES tcg.public.TCG_Change_Set(change_set_id)
|
||||
);
|
||||
68
sql/deprecated/31101_tri_TCG_MTG_Rarity.sql
Normal file
68
sql/deprecated/31101_tri_TCG_MTG_Rarity.sql
Normal file
@@ -0,0 +1,68 @@
|
||||
|
||||
CREATE OR REPLACE FUNCTION tcg.public.FN_before_insert_TCG_MTG_Rarity()
|
||||
RETURNS TRIGGER AS $$
|
||||
BEGIN
|
||||
NEW.created_on = CURRENT_TIMESTAMP;
|
||||
NEW.updated_last_on = CURRENT_TIMESTAMP;
|
||||
|
||||
IF NEW.change_set_id IS NULL THEN
|
||||
RAISE EXCEPTION 'Change Set ID must be provided.';
|
||||
END IF;
|
||||
|
||||
RETURN NEW;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql
|
||||
;
|
||||
|
||||
CREATE OR REPLACE FUNCTION tcg.public.FN_before_update_TCG_MTG_Rarity()
|
||||
RETURNS TRIGGER AS $$
|
||||
BEGIN
|
||||
NEW.updated_last_on = CURRENT_TIMESTAMP;
|
||||
|
||||
IF OLD.change_set_id IS NOT DISTINCT FROM NEW.change_set_id THEN
|
||||
RAISE EXCEPTION 'New Change Set ID must be provided.';
|
||||
END IF;
|
||||
|
||||
INSERT INTO tcg.public.TCG_MTG_Rarity_Audit (
|
||||
rarity_id
|
||||
, name_field
|
||||
, value_prev
|
||||
, value_new
|
||||
, change_set_id
|
||||
)
|
||||
-- Changed name
|
||||
SELECT NEW.rarity_id, 'name', OLD.name, NEW.name, NEW.change_set_id
|
||||
WHERE OLD.name IS NOT DISTINCT FROM NEW.name
|
||||
UNION
|
||||
-- Changed colour_name
|
||||
SELECT NEW.rarity_id, 'colour_name', OLD.colour_name, NEW.colour_name, NEW.change_set_id
|
||||
WHERE OLD.colour_name IS NOT DISTINCT FROM NEW.colour_name
|
||||
UNION
|
||||
-- Changed price_ratio_min
|
||||
SELECT NEW.rarity_id, 'price_ratio_min', CAST(OLD.price_ratio_min AS VARCHAR), CAST(NEW.price_ratio_min AS VARCHAR), NEW.change_set_id
|
||||
WHERE OLD.price_ratio_min IS NOT DISTINCT FROM NEW.price_ratio_min
|
||||
UNION
|
||||
-- Changed price_ratio_max
|
||||
SELECT NEW.rarity_id, 'price_ratio_max', CAST(OLD.price_ratio_max AS VARCHAR), CAST(NEW.price_ratio_max AS VARCHAR), NEW.change_set_id
|
||||
WHERE OLD.price_ratio_max IS NOT DISTINCT FROM NEW.price_ratio_max
|
||||
UNION
|
||||
-- Changed active
|
||||
SELECT NEW.rarity_id, 'active', OLD.active::TEXT, NEW.active::TEXT, NEW.change_set_id
|
||||
WHERE OLD.active IS NOT DISTINCT FROM NEW.active
|
||||
;
|
||||
|
||||
RETURN NEW;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql
|
||||
;
|
||||
|
||||
CREATE TRIGGER TRI_before_insert_TCG_MTG_Rarity
|
||||
BEFORE INSERT ON tcg.public.TCG_MTG_Rarity
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION tcg.public.FN_before_insert_TCG_MTG_Rarity()
|
||||
;
|
||||
CREATE TRIGGER TRI_before_update_TCG_MTG_Rarity
|
||||
BEFORE UPDATE ON tcg.public.TCG_MTG_Rarity
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION tcg.public.FN_before_update_TCG_MTG_Rarity()
|
||||
;
|
||||
Reference in New Issue
Block a user