Replaced procedures with prepared statements.

The Update Manager client cannot load MySQL procedures because the
parser breaks them.
This commit is contained in:
Ramon Novoa 2017-06-15 15:43:00 +02:00
parent d2d56b4b89
commit 035829ce91

View File

@ -1,25 +1,24 @@
START TRANSACTION; START TRANSACTION;
DROP PROCEDURE IF EXISTS addcol_oum706; SET @st_oum706 = (SELECT IF(
(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name = 'treport_content' AND table_schema = DATABASE() AND column_name = 'historical_db') > 0,
delimiter '//' "SELECT 1",
CREATE PROCEDURE addcol_oum706() BEGIN "ALTER TABLE treport_content ADD COLUMN historical_db tinyint(1) UNSIGNED NOT NULL default 0"
IF NOT EXISTS ( ));
SELECT * FROM information_schema.columns WHERE table_name='treport_content' AND column_name='historical_db'
) THEN PREPARE pr_oum706 FROM @st_oum706;
ALTER TABLE treport_content ADD COLUMN historical_db tinyint(1) UNSIGNED NOT NULL default 0; EXECUTE pr_oum706;
END IF; DEALLOCATE PREPARE pr_oum706;
IF NOT EXISTS (
SELECT * FROM information_schema.columns WHERE table_name='tpolicy_modules' AND column_name='ip_target' SET @st_oum706 = (SELECT IF(
) THEN (SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name = 'tpolicy_modules' AND table_schema = DATABASE() AND column_name = 'ip_target') > 0,
ALTER TABLE tpolicy_modules ADD COLUMN ip_target varchar(100) default ''; "SELECT 1",
END IF; "ALTER TABLE tpolicy_modules ADD COLUMN ip_target varchar(100) default ''"
END; ));
//
PREPARE pr_oum706 FROM @st_oum706;
delimiter ';' EXECUTE pr_oum706;
CALL addcol_oum706(); DEALLOCATE PREPARE pr_oum706;
DROP PROCEDURE addcol_oum706;
COMMIT; COMMIT;