-- ============================================================= -- 开机停机表 + 运行状态列 DDL(手动执行一次即可) -- 说明:重复执行会因“列已存在 / 表已存在”报错,可忽略; -- 如需重建列请先自行 DROP COLUMN。 -- 数据填充/更新请运行 sync_device_status.py(脚本内不含 DDL) -- ============================================================= -- 1) 开机停机表(由 开机停机表/*.xls 逐日记录合并成连续周期) CREATE TABLE IF NOT EXISTS machine_run_status ( id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '自增主键', unit_no INT NOT NULL COMMENT '机组:7/8/9', import_batch_id BIGINT UNSIGNED NOT NULL COMMENT 'pks导入批次:30/31/32', status TINYINT NOT NULL COMMENT '设备状态:1开机 0关机', status_start DATETIME NOT NULL COMMENT '状态开始时间(年月日 时分秒)', status_end DATETIME NOT NULL COMMENT '状态结束时间(年月日 时分秒,开区间)', start_category VARCHAR(50) NULL COMMENT '停机/启动类别(开始类别)', run_hours DECIMAL(10,2) NULL COMMENT '运行时间:关机段=0,开机段=状态开始到结束小时数', cum_run_hours DECIMAL(12,2) NULL COMMENT '累计运行时间(段内最大累计值)', PRIMARY KEY (id), KEY idx_unit_time (unit_no, status_start, status_end), KEY idx_batch_time (import_batch_id, status_start, status_end) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='开机停机表(合并自开机停机表/*.xls)'; -- 2) 长周期采样数据:增加设备状态列(0关机 1开机) ALTER TABLE pks_long_sample ADD COLUMN device_status TINYINT NOT NULL DEFAULT 0 COMMENT '设备状态:0关机 1开机'; -- 3) 波形文件表:增加设备状态列(0关机 1开机) ALTER TABLE wave_file ADD COLUMN device_status TINYINT NOT NULL DEFAULT 0 COMMENT '设备状态:0关机 1开机';