aboutsummaryrefslogtreecommitdiffstats
path: root/mayor-orig/mayor-naplo/update/pre004320-1-intezmeny.sql
blob: d82069836ab9f75e7849cfb2b29ba59d9f4ea08e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
DELIMITER $$
DROP PROCEDURE IF EXISTS upgrade_database_4320 $$

CREATE PROCEDURE upgrade_database_4320()
BEGIN
SET NAMES utf8 COLLATE utf8_hungarian_ci;

IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS WHERE CONSTRAINT_NAME='diak_ibfk_6') THEN
    UPDATE diak LEFT JOIN szulo ON (neveloId=szuloId) SET diak.neveloId=NULL WHERE diak.neveloId IS NOT NULL AND szulo.szuloId IS NULL;
    ALTER TABLE diak ADD CONSTRAINT `diak_ibfk_6` FOREIGN KEY (`neveloId`) REFERENCES `szulo` (`szuloId`) ON DELETE SET NULL ON UPDATE SET NULL;
END IF;

IF NOT EXISTS (
    SELECT * FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=DATABASE() and TABLE_NAME='diak' AND COLUMN_NAME='beiratoId'
) THEN
    ALTER TABLE `diak` ADD `beiratoId` int(10) unsigned DEFAULT NULL AFTER neveloId;
END IF;

IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS WHERE CONSTRAINT_NAME='diak_ibfk_7') THEN
    UPDATE diak LEFT JOIN szulo ON (beiratoId=szuloId) SET diak.beiratoId=NULL WHERE diak.beiratoId IS NOT NULL AND szulo.szuloId IS NULL;
    ALTER TABLE diak ADD CONSTRAINT `diak_ibfk_7` FOREIGN KEY (`beiratoId`) REFERENCES `szulo` (`szuloId`) ON DELETE SET NULL ON UPDATE SET NULL;
END IF;

END $$
DELIMITER ;
CALL upgrade_database_4320();