From d0c82423dba47115bd735d4ad141903537e4f5a6 Mon Sep 17 00:00:00 2001 From: Kirill Solomko Date: Fri, 11 Mar 2016 14:32:42 +0100 Subject: [PATCH] MT#18499 added voip_contract_locations, voip_contract_location_blocks Change-Id: I229e66e9d80e59438f0ffdaca1188e3b5f10259e --- db_scripts/diff/15226.down | 11 +++++++++++ db_scripts/diff/15226.up | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 db_scripts/diff/15226.down create mode 100644 db_scripts/diff/15226.up diff --git a/db_scripts/diff/15226.down b/db_scripts/diff/15226.down new file mode 100644 index 00000000..a08e9c3f --- /dev/null +++ b/db_scripts/diff/15226.down @@ -0,0 +1,11 @@ +use provisioning; +set autocommit=0; + +ALTER TABLE `voip_contract_preferences` + DROP FOREIGN KEY `v_c_p_locationid_ref`, + DROP COLUMN `location_id`; + +DROP TABLE `voip_contract_location_blocks`; +DROP TABLE `voip_contract_locations`; + +commit; diff --git a/db_scripts/diff/15226.up b/db_scripts/diff/15226.up new file mode 100644 index 00000000..2fa3944b --- /dev/null +++ b/db_scripts/diff/15226.up @@ -0,0 +1,37 @@ +use provisioning; +set autocommit=0; + +CREATE TABLE `voip_contract_locations` ( + `id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `contract_id` int(11) unsigned NOT NULL, + `name` varchar(255) NOT NULL, + `description` varchar(255) NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `vcl_contract_name_idx` (`contract_id`,`name`), + CONSTRAINT `vcl_contract_ref` FOREIGN KEY (`contract_id`) REFERENCES `billing`.`contracts` (`id`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +CREATE TABLE `voip_contract_location_blocks` ( + `id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `location_id` int(11) unsigned NOT NULL, + `ip` varchar(39) NOT NULL, + `mask` tinyint(1) unsigned DEFAULT NULL, + `_ipv4_net_from` varbinary(4) DEFAULT NULL, + `_ipv4_net_to` varbinary(4) DEFAULT NULL, + `_ipv6_net_from` varbinary(16) DEFAULT NULL, + `_ipv6_net_to` varbinary(16) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `vclb_unique_location_block` (`location_id`,`ip`,`mask`), + KEY `vclb_ipv4_from_idx` (`_ipv4_net_from`), + KEY `vclb_ipv4_to_idx` (`_ipv4_net_to`), + KEY `vclb_ipv6_from_idx` (`_ipv6_net_from`), + KEY `vclb_ipv6_to_idx` (`_ipv6_net_to`), + KEY `vclb_location_ref` (`location_id`), + CONSTRAINT `vclb_location_ref` FOREIGN KEY (`location_id`) REFERENCES `voip_contract_locations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +ALTER TABLE `voip_contract_preferences` + ADD COLUMN `location_id` int(11) unsigned DEFAULT NULL, + ADD CONSTRAINT `v_c_p_locationid_ref` FOREIGN KEY (`location_id`) REFERENCES `voip_contract_locations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; + +commit;