error_cmd text, -- Shell command to execute if any error occurs
ignore_cmd_errors bool NOT NULL DEFAULT false, -- Install file anyway even if an error occurs
always_update bool NOT NULL DEFAULT false -- Always attempt to install file even if unchanged
-);
+) WITH OIDS;
CREATE TABLE conf_file_node (
conf_file_id integer REFERENCES conf_files NOT NULL, -- Configuration file identifier
) WITH OIDS;
CREATE INDEX pcu_types_model_idx ON pcu_types (model);
-CREATE TABLE pcu_type_port (
+CREATE TABLE pcu_protocol_type (
+ pcu_protocol_type_id serial PRIMARY KEY,
pcu_type_id integer REFERENCES pcu_types NOT NULL, -- PCU type identifier
port integer NOT NULL, -- PCU port
- protocol text NOT NULL, -- Protocol
- supported boolean NOT NULL -- Does PLC support
+ protocol text NOT NULL, -- Protocol
+ supported boolean NOT NULL DEFAULT True -- Does PLC support
) WITH OIDS;
-CREATE INDEX pcu_type_port_pcu_type_id ON pcu_type_port (pcu_type_id);
+CREATE INDEX pcu_protocol_type_pcu_type_id ON pcu_protocol_type (pcu_type_id);
-CREATE OR REPLACE VIEW pcu_type_ports AS
+CREATE OR REPLACE VIEW pcu_protocol_types AS
SELECT pcu_type_id,
-array_accum(port) as ports,
-array_accum(protocol) as protocols,
-array_accum(supported) as supported
-FROM pcu_type_port
+array_accum(pcu_protocol_type_id) as pcu_protocol_type_ids
+FROM pcu_protocol_type
GROUP BY pcu_type_id;
--------------------------------------------------------------------------------
pcu_types.pcu_type_id,
pcu_types.model,
pcu_types.name,
-COALESCE((SELECT ports FROM pcu_type_ports WHERE pcu_type_ports.pcu_type_id = pcu_types.pcu_type_id), '{}') AS ports,
-COALESCE((SELECT protocols FROM pcu_type_ports WHERE pcu_type_ports.pcu_type_id = pcu_types.pcu_type_id), '{}') AS protocols,
-COALESCE((SELECT supported FROM pcu_type_ports WHERE pcu_type_ports.pcu_type_id = pcu_types.pcu_type_id), '{}') AS supported
+COALESCE((SELECT pcu_protocol_type_ids FROM pcu_protocol_types WHERE pcu_protocol_types.pcu_type_id = pcu_types.pcu_type_id), '{}') AS pcu_protocol_type_ids
FROM pcu_types;
-
CREATE OR REPLACE VIEW view_events AS
SELECT
events.event_id,