ACASetting.sqlbook 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. -- SQLBook: Code
  2. -- Active: 1751960213665@@192.1.2.61@5236@EQM_CESHI
  3. #存储对比项的表格 tACACompareItems
  4. #对比项的对比通道表 tACACompareItemRoad
  5. #创建 tACACompareItems
  6. -- 创建表
  7. CREATE TABLE tACACompareItems
  8. (
  9. ItemID INT PRIMARY KEY,
  10. ItemName VARCHAR(64) NOT NULL,
  11. ItemEnable BIT NOT NULL DEFAULT 1,
  12. RoadCount INT DEFAULT 0,
  13. SilentEnable BIT NOT NULL DEFAULT 0,
  14. SilentThreshold INT DEFAULT 0,
  15. SilentDuration INT DEFAULT 0,
  16. SilentSensitivity INT DEFAULT 0,
  17. OverloadEnable BIT NOT NULL DEFAULT 0,
  18. OverloadThreshold INT DEFAULT 0,
  19. OverloadDuration INT DEFAULT 0,
  20. OverloadSensitivity INT DEFAULT 0,
  21. PhaseEnable BIT NOT NULL DEFAULT 0,
  22. PhaseThreshold DOUBLE DEFAULT 0,
  23. PhaseDuration INT DEFAULT 0,
  24. PhaseSensitivity INT DEFAULT 0
  25. );
  26. -- 表注释
  27. COMMENT ON TABLE tACACompareItems IS 'ACA对比项表';
  28. -- 字段注释
  29. COMMENT ON COLUMN tACACompareItems.ItemID IS '对比项ID';
  30. COMMENT ON COLUMN tACACompareItems.ItemName IS '对比项名称';
  31. COMMENT ON COLUMN tACACompareItems.ItemEnable IS '对比项是否启用';
  32. COMMENT ON COLUMN tACACompareItems.RoadCount IS '对比通道数';
  33. COMMENT ON COLUMN tACACompareItems.SilentEnable IS '是否启用静音';
  34. COMMENT ON COLUMN tACACompareItems.SilentThreshold IS '静音阈值';
  35. COMMENT ON COLUMN tACACompareItems.SilentDuration IS '静音持续时间';
  36. COMMENT ON COLUMN tACACompareItems.SilentSensitivity IS '静音灵敏度';
  37. COMMENT ON COLUMN tACACompareItems.OverloadEnable IS '是否启用过载';
  38. COMMENT ON COLUMN tACACompareItems.OverloadThreshold IS '过载阈值';
  39. COMMENT ON COLUMN tACACompareItems.OverloadDuration IS '过载持续时间';
  40. COMMENT ON COLUMN tACACompareItems.OverloadSensitivity IS '过载灵敏度';
  41. COMMENT ON COLUMN tACACompareItems.PhaseEnable IS '是否启用反相';
  42. COMMENT ON COLUMN tACACompareItems.PhaseThreshold IS '反相阈值';
  43. COMMENT ON COLUMN tACACompareItems.PhaseDuration IS '反相持续时间';
  44. COMMENT ON COLUMN tACACompareItems.PhaseSensitivity IS '反相灵敏度';
  45. -- 创建索引
  46. -- CREATE INDEX idx_tACACompareItems_ItemName ON tACACompareItems (ItemName);
  47. -- SQLBook: Code
  48. #删除 tACACompareItems
  49. DROP TABLE IF EXISTS "EQM_CESHI".tACACompareItems;
  50. -- SQLBook: Code
  51. #创建 tACACompareItemRoad
  52. #这里设置了级联删除,当 tACACompareItems 表中的某个对比项被删除时,tACACompareItemRoad 中对应的通道也会被删除。
  53. CREATE TABLE tACACompareItemRoad
  54. (
  55. ItemID INT NOT NULL,
  56. RoadNum INT NOT NULL,
  57. RoadName VARCHAR(64) NOT NULL,
  58. RoadRecordEnable BIT NOT NULL DEFAULT 1,
  59. SoundCardNum INT NOT NULL DEFAULT 0,
  60. SoundCardID VARCHAR(64),
  61. SoundCardName VARCHAR(64),
  62. SoundCardRoadNum INT NOT NULL DEFAULT 0,
  63. ChannelID INT,
  64. ChannelName VARCHAR(64),
  65. PRIMARY KEY (ItemID, RoadNum),
  66. FOREIGN KEY (ItemID) REFERENCES tACACompareItems(ItemID)
  67. ON DELETE CASCADE
  68. );
  69. -- 表注释
  70. COMMENT ON TABLE tACACompareItemRoad IS '对比项通道表';
  71. -- 字段注释
  72. COMMENT ON COLUMN tACACompareItemRoad.ItemID IS '对比项ID';
  73. COMMENT ON COLUMN tACACompareItemRoad.RoadNum IS '通道编号,1是主通道,其他对比通道依次向后排';
  74. COMMENT ON COLUMN tACACompareItemRoad.RoadName IS '通道名称';
  75. COMMENT ON COLUMN tACACompareItemRoad.RoadRecordEnable IS '通道录音是否启用';
  76. COMMENT ON COLUMN tACACompareItemRoad.SoundCardNum IS '声卡编号,在系统中的编号';
  77. COMMENT ON COLUMN tACACompareItemRoad.SoundCardID IS '声卡ID,可以使用声卡ID来打开声卡';
  78. COMMENT ON COLUMN tACACompareItemRoad.SoundCardName IS '声卡名称';
  79. COMMENT ON COLUMN tACACompareItemRoad.SoundCardRoadNum IS '声卡通道编号,使用声卡编号和声卡通道编号开始录音';
  80. COMMENT ON COLUMN tACACompareItemRoad.ChannelID IS '频道ID';
  81. COMMENT ON COLUMN tACACompareItemRoad.ChannelName IS '频道名称';
  82. -- SQLBook: Code
  83. #创建ACA的系统配置表,使用Key获取存储的值,值内容是一个JOSN字符串
  84. CREATE TABLE tACASystemConfig
  85. (
  86. PKID INT PRIMARY KEY AUTO_INCREMENT,
  87. ConfigKey VARCHAR(64) NOT NULL UNIQUE,
  88. ConfigValue TEXT NOT NULL,
  89. UpdateTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  90. ConfigDesc VARCHAR(256)
  91. );
  92. CREATE OR REPLACE TRIGGER trg_update_time
  93. BEFORE UPDATE ON tACASystemConfig
  94. FOR EACH ROW
  95. BEGIN
  96. :NEW.UpdateTime := CURRENT_TIMESTAMP;
  97. END;
  98. -- 表注释
  99. COMMENT ON TABLE tACASystemConfig IS 'ACA系统配置表';
  100. -- 字段注释
  101. COMMENT ON COLUMN tACASystemConfig.PKID IS '主键ID';
  102. COMMENT ON COLUMN tACASystemConfig.ConfigKey IS '配置键';
  103. COMMENT ON COLUMN tACASystemConfig.ConfigValue IS '配置值,存储为JSON字符串';
  104. COMMENT ON COLUMN tACASystemConfig.UpdateTime IS '配置更新时间';
  105. COMMENT ON COLUMN tACASystemConfig.ConfigDesc IS '配置描述';
  106. -- SQLBook: Code
  107. #创建检测计划表格
  108. CREATE TABLE tACADetectPeriod
  109. (
  110. ItemID INT NOT NULL,
  111. IsDetect BIT NOT NULL DEFAULT 1, -- 是否检测
  112. WeekType INT NOT NULL,
  113. CDate VARCHAR(32),
  114. TimeStart VARCHAR(32) NOT NULL,
  115. TimeEnd VARCHAR(32) NOT NULL,
  116. ApplySlient BIT NOT NULL DEFAULT 0, -- 是否应用静音
  117. ApplyOverload BIT NOT NULL DEFAULT 0, -- 是否应用超载
  118. ApplyPhase BIT NOT NULL DEFAULT 0, -- 是否应用反相
  119. ApplyNoise BIT NOT NULL DEFAULT 0, -- 是否应用噪音
  120. FOREIGN KEY (ItemID) REFERENCES tACACompareItems(ItemID)
  121. ON DELETE CASCADE
  122. );
  123. -- 表注释
  124. COMMENT ON TABLE tACADetectPeriod IS '检测计划表';
  125. -- 字段注释
  126. COMMENT ON COLUMN tACADetectPeriod.ItemID IS '对比项ID';
  127. COMMENT ON COLUMN tACADetectPeriod.IsDetect IS '是否检测,1表示检测日期,0表示非检测日期';
  128. COMMENT ON COLUMN tACADetectPeriod.WeekType IS '检测计划的星期,1-7表示周一到周日,8表示特殊日期,也就是非检测日';
  129. COMMENT ON COLUMN tACADetectPeriod.CDate IS '检测计划的日期';
  130. COMMENT ON COLUMN tACADetectPeriod.TimeStart IS '检测计划的开始时间';
  131. COMMENT ON COLUMN tACADetectPeriod.TimeEnd IS '检测计划的结束时间';
  132. COMMENT ON COLUMN tACADetectPeriod.ApplySlient IS '是否应用静音检测';
  133. COMMENT ON COLUMN tACADetectPeriod.ApplyOverload IS '是否应用超载检测';
  134. COMMENT ON COLUMN tACADetectPeriod.ApplyPhase IS '是否应用反相检测';
  135. COMMENT ON COLUMN tACADetectPeriod.ApplyNoise IS '是否应用噪音检测';
  136. -- 创建索引
  137. CREATE INDEX idx_tACADetectPeriod_ItemID ON tACADetectPeriod (ItemID);
  138. -- SQLBook: Code
  139. -- Active: 1752920752747@@192.1.2.61@5236@EQM_CESHI
  140. #创建报警记录表
  141. CREATE TABLE tACAAlarmInfo
  142. (
  143. PKID INT PRIMARY KEY AUTO_INCREMENT,
  144. ItemID INT NOT NULL,
  145. ItemName VARCHAR(64) NOT NULL,
  146. AlarmType INT NOT NULL, -- 报警类型,1-静音,2-过载,3-反相,4-噪音
  147. SoundCardNum VARCHAR(64) NOT NULL, -- 声卡编号(在系统中的编号)
  148. SoundCardName VARCHAR(64), -- 声卡名称
  149. SoundCardRoadNum INT NOT NULL, -- 声卡通道编号
  150. CompareRoadNum INT NOT NULL, -- 对比通道编号
  151. CompareRoadName VARCHAR(64), -- 对比通道名称
  152. CompareRoadType INT, -- 通道类型:1、主输出,2、空收,3、主输出空收
  153. AlarmStartTime VARCHAR(32), -- 报警开始时间 (格式:YYYY-MM-DD HH:MM:SS)
  154. AlarmEndTime VARCHAR(32), -- 报警结束时间 (格式:YYYY-MM-DD HH:MM:SS)
  155. AlarmDuration INT, -- 报警持续时间(秒数)
  156. AlarmFilePath VARCHAR(256), -- 报警录音文件路径
  157. FileAlarmStartPos int -- 在报警录音文件中报警开始的时间
  158. MainRoadPKID INT, -- 主通道的PKID
  159. FOREIGN KEY (ItemID) REFERENCES tACACompareItems(ItemID)
  160. )
  161. -- 表注释
  162. COMMENT ON TABLE tACAAlarmInfo IS 'ACA报警记录表';
  163. -- 字段注释
  164. COMMENT ON COLUMN tACAAlarmInfo.PKID IS '主键ID';
  165. COMMENT ON COLUMN tACAAlarmInfo.ItemID IS '对比项ID';
  166. COMMENT ON COLUMN tACAAlarmInfo.ItemName IS '对比项名称';
  167. COMMENT ON COLUMN tACAAlarmInfo.AlarmType IS '报警类型,1-静音,2-过载,3-反相,4-噪音';
  168. COMMENT ON COLUMN tACAAlarmInfo.SoundCardNum IS '声卡编号(在系统中的编号)';
  169. COMMENT ON COLUMN tACAAlarmInfo.SoundCardName IS '声卡名称';
  170. COMMENT ON COLUMN tACAAlarmInfo.SoundCardRoadNum IS '声卡通道编号';
  171. COMMENT ON COLUMN tACAAlarmInfo.CompareRoadNum IS '对比通道编号';
  172. COMMENT ON COLUMN tACAAlarmInfo.CompareRoadName IS '对比通道名称';
  173. COMMENT ON COLUMN tACAAlarmInfo.CompareRoadType IS '通道类型:1、主输出,2、空收,3、主输出空收';
  174. COMMENT ON COLUMN tACAAlarmInfo.AlarmStartTime IS '报警开始时间 (格式:YYYY-MM-DD HH:MM:SS)';
  175. COMMENT ON COLUMN tACAAlarmInfo.AlarmEndTime IS '报警结束时间 (格式:YYYY-MM-DD HH:MM:SS)';
  176. COMMENT ON COLUMN tACAAlarmInfo.AlarmDuration IS '报警持续时间(秒数)';
  177. COMMENT ON COLUMN tACAAlarmInfo.AlarmFilePath IS '报警录音文件路径';
  178. COMMENT ON COLUMN tACAAlarmInfo.FileAlarmStartPos IS '在报警录音文件中报警开始的时间';
  179. COMMENT ON COLUMN tACAAlarmInfo.MainRoadPKID IS '对比项主通道报警信息的PKID';
  180. -- 创建索引
  181. CREATE INDEX idx_tACAAlarmInfo_ItemID ON tACAAlarmInfo (ItemID);
  182. CREATE INDEX idx_tACAAlarmInfo_AlarmType ON tACAAlarmInfo (AlarmType);
  183. CREATE INDEX idx_tACAAlarmInfo_SoundCardNum ON tACAAlarmInfo (SoundCardNum);
  184. CREATE INDEX idx_tACAAlarmInfo_SoundCardRoadNum ON tACAAlarmInfo (SoundCardRoadNum);
  185. CREATE INDEX idx_tACAAlarmInfo_CompareRoadNum ON tACAAlarmInfo (CompareRoadNum);
  186. CREATE INDEX idx_tACAAlarmInfo_AlarmStartTime ON tACAAlarmInfo (AlarmStartTime);
  187. CREATE INDEX idx_tACAAlarmInfo_AlarmEndTime ON tACAAlarmInfo (AlarmEndTime);