EverWrath/data/sql/updates/db_auth/2016_11_19_00.sql
Yehonal 8836d161ff Improved db_assembler simplifying updating process
Implemented a check for versioning column to skip already applied updates
In this way the script can combine all updates under a single sql file
that can be imported directly in any case
2017-05-01 21:17:26 +02:00

31 lines
1.1 KiB
SQL

-- DB update 2016_11_18_00 -> 2016_11_19_00
DROP PROCEDURE IF EXISTS `updateDb`;
DELIMITER //
CREATE PROCEDURE updateDb ()
proc:BEGIN DECLARE OK VARCHAR(100) DEFAULT 'FALSE';
SELECT COUNT(*) INTO @COLEXISTS
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'version_db_world' AND COLUMN_NAME = '2016_11_18_00';
IF @COLEXISTS = 0 THEN LEAVE proc; END IF;
START TRANSACTION;
ALTER TABLE version_db_auth CHANGE COLUMN 2016_11_18_00 2016_11_19_00 bit;
SELECT sql_rev INTO OK FROM version_db_auth WHERE sql_rev = '1478975214169487000'; IF OK <> 'FALSE' THEN LEAVE proc; END IF;
--
-- START UPDATING QUERIES
--
INSERT INTO version_db_auth (`sql_rev`) VALUES ('1478975214169487000');
ALTER TABLE `account`
ADD `token_key` VARCHAR(100) NOT NULL DEFAULT '' AFTER `s`,
ADD `reg_mail` VARCHAR(255) NOT NULL DEFAULT '' AFTER `email`,
ADD `last_attempt_ip` VARCHAR(15) NOT NULL DEFAULT '127.0.0.1' AFTER `last_ip`,
ADD `lock_country` VARCHAR(2) NOT NULL DEFAULT '00' AFTER `locked`;
--
-- END UPDATING QUERIES
--
COMMIT;
END;
//
DELIMITER ;
CALL updateDb();
DROP PROCEDURE IF EXISTS `updateDb`;