1. PostgreSQL copy of all MySQL created and tested.\n 2. Purchase Orders and Sales Orders and stock level management added to MySQL, PostgreSQL, and server and front end code.
This commit is contained in:
71
static/MySQL/320_tri_Shop_Image.sql
Normal file
71
static/MySQL/320_tri_Shop_Image.sql
Normal file
@@ -0,0 +1,71 @@
|
||||
|
||||
# Shop Image
|
||||
|
||||
USE PARTSLTD_PROD;
|
||||
|
||||
DROP TRIGGER IF EXISTS before_insert_Shop_Image;
|
||||
DROP TRIGGER IF EXISTS before_update_Shop_Image;
|
||||
|
||||
|
||||
DELIMITER //
|
||||
CREATE TRIGGER before_insert_Shop_Image
|
||||
BEFORE INSERT ON Shop_Image
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
SET NEW.created_on = NOW();
|
||||
SET NEW.created_by = CURRENT_USER();
|
||||
END //
|
||||
DELIMITER ;
|
||||
|
||||
|
||||
DELIMITER //
|
||||
CREATE TRIGGER before_update_Shop_Image
|
||||
BEFORE UPDATE ON Shop_Image
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
IF OLD.id_change_set <=> NEW.id_change_set THEN
|
||||
SIGNAL SQLSTATE '45000'
|
||||
SET MESSAGE_TEXT = 'New change set ID must be provided.';
|
||||
END IF;
|
||||
IF ISNULL(NEW.id_product) AND ISNULL(NEW.id_permutation) THEN
|
||||
SIGNAL SQLSTATE '45000'
|
||||
SET MESSAGE_TEXT = 'Image must NOT have ID for product AND product permutation.';
|
||||
END IF;
|
||||
|
||||
INSERT INTO Shop_Image_Audit (
|
||||
id_image,
|
||||
name_field,
|
||||
value_prev,
|
||||
value_new,
|
||||
id_change_set
|
||||
)
|
||||
# Changed id_type_image
|
||||
SELECT NEW.id_image, 'id_type_image', CONVERT(OLD.id_type_image, CHAR), CONVERT(NEW.id_type_image, CHAR), NEW.id_change_set
|
||||
WHERE NOT OLD.id_type_image <=> NEW.id_type_image
|
||||
UNION
|
||||
# Changed id_type_file
|
||||
SELECT NEW.id_image, 'id_type_file', CONVERT(OLD.id_type_file, CHAR), CONVERT(NEW.id_type_file, CHAR), NEW.id_change_set
|
||||
WHERE NOT OLD.id_type_file <=> NEW.id_type_file
|
||||
UNION
|
||||
# Changed id_product
|
||||
SELECT NEW.id_image, 'id_product', CONVERT(OLD.id_product, CHAR), CONVERT(NEW.id_product, CHAR), NEW.id_change_set
|
||||
WHERE NOT OLD.id_product <=> NEW.id_product
|
||||
UNION
|
||||
# Changed id_permutation
|
||||
SELECT NEW.id_image, 'id_permutation', CONVERT(OLD.id_permutation, CHAR), CONVERT(NEW.id_permutation, CHAR), NEW.id_change_set
|
||||
WHERE NOT OLD.id_permutation <=> NEW.id_permutation
|
||||
UNION
|
||||
# Changed url
|
||||
SELECT NEW.id_image, 'url', OLD.url, NEW.url, NEW.id_change_set
|
||||
WHERE NOT OLD.url <=> NEW.url
|
||||
UNION
|
||||
# Changed active
|
||||
SELECT NEW.id_image, 'active', CONVERT(CONVERT(OLD.active, SIGNED), CHAR), CONVERT(CONVERT(NEW.active, SIGNED), CHAR), NEW.id_change_set
|
||||
WHERE NOT (OLD.active <=> NEW.active)
|
||||
UNION
|
||||
# Changed display_order
|
||||
SELECT NEW.id_image, 'display_order', CONVERT(OLD.display_order, CHAR), CONVERT(NEW.display_order, CHAR), NEW.id_change_set
|
||||
WHERE NOT (OLD.display_order <=> NEW.display_order)
|
||||
;
|
||||
END //
|
||||
DELIMITER ;
|
||||
Reference in New Issue
Block a user