diff --git a/data/sql/updates/db_auth/2017_08_20_01.sql b/data/sql/updates/db_auth/2017_08_20_01.sql new file mode 100644 index 000000000..dbd6b133a --- /dev/null +++ b/data/sql/updates/db_auth/2017_08_20_01.sql @@ -0,0 +1,47 @@ +-- DB update 2017_08_20_00 -> 2017_08_20_01 +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_auth' AND COLUMN_NAME = '2017_08_20_00'; +IF @COLEXISTS = 0 THEN LEAVE proc; END IF; +START TRANSACTION; +ALTER TABLE version_db_auth CHANGE COLUMN 2017_08_20_00 2017_08_20_01 bit; +SELECT sql_rev INTO OK FROM version_db_auth WHERE sql_rev = '1498796201292521600'; IF OK <> 'FALSE' THEN LEAVE proc; END IF; +-- +-- START UPDATING QUERIES +-- +INSERT INTO version_db_auth (`sql_rev`) VALUES ('1498796201292521600'); + +ALTER TABLE `account` ADD COLUMN `lock_country` VARCHAR(2) NOT NULL DEFAULT '00' AFTER `locked`; + +DROP TABLE IF EXISTS `ip2nation`; +CREATE TABLE `ip2nation` ( + `ip` int(11) unsigned NOT NULL default '0', + `country`char(2) NOT NULL default '', + KEY `ip` (`ip`) +)ENGINE=InnoDB DEFAULT CHARSET=utf8; + +DROP TABLE IF EXISTS `ip2nationCountries`; +CREATE TABLE `ip2nationCountries` ( + `code` varchar(4) NOT NULL default '', + `iso_code_2` varchar(2) NOT NULL default '', + `iso_code_3` varchar(3) default '', + `iso_country` varchar(255) NOT NULL default '', + `country` varchar(255) NOT NULL default '', + `lat` float NOT NULL default '0', + `lon` float NOT NULL default '0', + PRIMARY KEY (`code`), + KEY `code` (`code`) +)ENGINE=InnoDB DEFAULT CHARSET=utf8; +-- +-- END UPDATING QUERIES +-- +COMMIT; +END; +// +DELIMITER ; +CALL updateDb(); +DROP PROCEDURE IF EXISTS `updateDb`; diff --git a/data/sql/updates/db_world/2017_08_20_01.sql b/data/sql/updates/db_world/2017_08_20_01.sql new file mode 100644 index 000000000..31c12794c --- /dev/null +++ b/data/sql/updates/db_world/2017_08_20_01.sql @@ -0,0 +1,33 @@ +-- DB update 2017_08_20_00 -> 2017_08_20_01 +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 = '2017_08_20_00'; +IF @COLEXISTS = 0 THEN LEAVE proc; END IF; +START TRANSACTION; +ALTER TABLE version_db_world CHANGE COLUMN 2017_08_20_00 2017_08_20_01 bit; +SELECT sql_rev INTO OK FROM version_db_world WHERE sql_rev = '1498796247453520600'; IF OK <> 'FALSE' THEN LEAVE proc; END IF; +-- +-- START UPDATING QUERIES +-- +INSERT INTO version_db_world (`sql_rev`) VALUES ('1498796247453520600'); + +DROP TABLE IF EXISTS ip2nation; +DROP TABLE IF EXISTS ip2nationCountries; + +DELETE FROM `command` WHERE `name` in ('account lock', 'account lock ip', 'account lock country'); +INSERT INTO `command` (`name`,`security`,`help`) VALUES +('account lock ip', 0, 'Syntax: .account lock ip [on|off]\nAllow login from account only from current used IP or remove this requirement.'), +('account lock country', 0, 'Syntax: .account lock country [on|off]\nAllow login from account only from current used Country or remove this requirement.'); +-- +-- END UPDATING QUERIES +-- +COMMIT; +END; +// +DELIMITER ; +CALL updateDb(); +DROP PROCEDURE IF EXISTS `updateDb`;