diff options
Diffstat (limited to '')
-rw-r--r-- | schema/mysql-legacy-changes/upgrade_23.sql | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/schema/mysql-legacy-changes/upgrade_23.sql b/schema/mysql-legacy-changes/upgrade_23.sql new file mode 100644 index 0000000..2368a17 --- /dev/null +++ b/schema/mysql-legacy-changes/upgrade_23.sql @@ -0,0 +1,51 @@ +DROP TABLE director_datatype; + +CREATE TABLE director_datafield ( + id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, + varname VARCHAR(64) NOT NULL, + caption VARCHAR(255) NOT NULL, + description TEXT DEFAULT NULL, + datatype varchar(255) NOT NULL, +-- datatype_param? multiple ones? + format enum ('string', 'json', 'expression'), + PRIMARY KEY (id), + KEY search_idx (varname) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +DROP TABLE icinga_host_field; + +CREATE TABLE icinga_host_field ( + host_id INT(10) UNSIGNED NOT NULL COMMENT 'Makes only sense for templates', + datafield_id INT(10) UNSIGNED NOT NULL, + is_required ENUM('y', 'n') DEFAULT NULL, + PRIMARY KEY (host_id, datafield_id), + CONSTRAINT icinga_host_field_host + FOREIGN KEY host(host_id) + REFERENCES icinga_host (id) + ON DELETE CASCADE + ON UPDATE CASCADE, + CONSTRAINT icinga_host_field_datafield + FOREIGN KEY datafield(datafield_id) + REFERENCES director_datafield (id) + ON DELETE CASCADE + ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +DROP TABLE icinga_service_field; + +CREATE TABLE icinga_service_field ( + service_id INT(10) UNSIGNED NOT NULL COMMENT 'Makes only sense for templates', + datafield_id INT(10) UNSIGNED NOT NULL, + is_required ENUM('y', 'n') DEFAULT NULL, + PRIMARY KEY (service_id, datafield_id), + CONSTRAINT icinga_service_field_service + FOREIGN KEY service(service_id) + REFERENCES icinga_service (id) + ON DELETE CASCADE + ON UPDATE CASCADE, + CONSTRAINT icinga_service_field_datafield + FOREIGN KEY datafield(datafield_id) + REFERENCES director_datafield (id) + ON DELETE CASCADE + ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8;
\ No newline at end of file |