CreateTable-MySQL.sqlbook 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. -- SQLBook: Code
  2. -- Active: 1756343447531@@192.1.2.49@32124@eqm
  3. -- Active: 1756343447531@@192.1.2.49@32124@eqm_ceshi
  4. #存储对比项的表格 tACACompareItems
  5. #对比项的对比通道表 tACACompareItemRoad
  6. #创建 tACACompareItems
  7. CREATE TABLE tACACompareItems (
  8. ItemID INT PRIMARY KEY AUTO_INCREMENT COMMENT '对比项ID',
  9. ItemName VARCHAR(64) NOT NULL COMMENT '对比项名称',
  10. ItemEnable TINYINT(1) NOT NULL DEFAULT 1 COMMENT '对比项是否启用',
  11. RoadCount INT DEFAULT 0 COMMENT '对比通道数',
  12. SilentEnable TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否启用静音',
  13. SilentThreshold INT DEFAULT 0 COMMENT '静音阈值',
  14. SilentDuration INT DEFAULT 0 COMMENT '静音持续时间',
  15. SilentSensitivity INT DEFAULT 0 COMMENT '静音灵敏度',
  16. OverloadEnable TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否启用过载',
  17. OverloadThreshold INT DEFAULT 0 COMMENT '过载阈值',
  18. OverloadDuration INT DEFAULT 0 COMMENT '过载持续时间',
  19. OverloadSensitivity INT DEFAULT 0 COMMENT '过载灵敏度',
  20. PhaseEnable TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否启用反相',
  21. PhaseThreshold DOUBLE DEFAULT 0 COMMENT '反相阈值',
  22. PhaseDuration INT DEFAULT 0 COMMENT '反相持续时间',
  23. PhaseSensitivity INT DEFAULT 0 COMMENT '反相灵敏度'
  24. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='ACA对比项表';
  25. -- SQLBook: Code
  26. -- Active: 1756343447531@@192.1.2.49@32124@eqm
  27. -- Active: 1756343447531@@192.1.2.49@32124@eqm_ceshi
  28. #删除 tACACompareItems
  29. DROP TABLE IF EXISTS tACACompareItems;
  30. #删除 tACACompareItemRoad
  31. DROP TABLE IF EXISTS tACACompareItemRoad;
  32. #删除 tACASystemConfig
  33. DROP TABLE IF EXISTS tACASystemConfig;
  34. #删除 tACADetectPeriod
  35. DROP TABLE IF EXISTS tACADetectPeriod;
  36. #删除 tACAAlarmInfo
  37. DROP TABLE IF EXISTS tACAAlarmInfo;
  38. #删除 tACARecordFile
  39. DROP TABLE IF EXISTS tACARecordFile;
  40. #删除 tACASoundCardPCMChannels
  41. DROP TABLE IF EXISTS tACASoundCardPCMChannels;
  42. -- SQLBook: Code
  43. #创建 tACACompareItemRoad
  44. #这里设置了级联删除,当 tACACompareItems 表中的某个对比项被删除时,tACACompareItemRoad 中对应的通道也会被删除。
  45. CREATE TABLE tACACompareItemRoad (
  46. ItemID INT NOT NULL COMMENT '对比项ID',
  47. RoadNum INT NOT NULL COMMENT '通道编号,1是主通道,其他对比通道依次向后排',
  48. RoadName VARCHAR(64) NOT NULL COMMENT '通道名称',
  49. RoadRecordEnable TINYINT(1) NOT NULL DEFAULT 1 COMMENT '通道录音是否启用',
  50. SoundCardName VARCHAR(64) COMMENT '声卡名称',
  51. SoundCardPCMName VARCHAR(64) NOT NULL DEFAULT '0' COMMENT '声卡PCM通道名称,使用这个名称打开录音',
  52. ChannelID INT COMMENT '频道ID',
  53. ChannelName VARCHAR(64) COMMENT '频道名称',
  54. PRIMARY KEY (ItemID, RoadNum),
  55. FOREIGN KEY (ItemID) REFERENCES tACACompareItems(ItemID) ON DELETE CASCADE
  56. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='对比项通道表';
  57. -- SQLBook: Code
  58. #创建ACA的系统配置表,使用Key获取存储的值,值内容是一个JOSN字符串
  59. CREATE TABLE tACASystemConfig (
  60. PKID INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
  61. ConfigKey VARCHAR(64) NOT NULL UNIQUE COMMENT '配置键',
  62. ConfigValue TEXT NOT NULL COMMENT '配置值,存储为JSON字符串',
  63. UpdateTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '配置更新时间',
  64. ConfigDesc VARCHAR(256) COMMENT '配置描述'
  65. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='ACA系统配置表';
  66. -- SQLBook: Code
  67. #创建检测计划表格
  68. CREATE TABLE tACADetectPeriod (
  69. ItemID INT NOT NULL COMMENT '对比项ID',
  70. IsDetect TINYINT(1) NOT NULL DEFAULT 1 COMMENT '是否检测,1表示检测日期,0表示非检测日期',
  71. WeekType INT NOT NULL COMMENT '检测计划的星期,1-7表示周一到周日,8表示特殊日期,也就是非检测日',
  72. CDate VARCHAR(32) COMMENT '检测计划的日期',
  73. TimeStart VARCHAR(32) NOT NULL COMMENT '检测计划的开始时间',
  74. TimeEnd VARCHAR(32) NOT NULL COMMENT '检测计划的结束时间',
  75. ApplySlient TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否应用静音检测',
  76. ApplyOverload TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否应用超载检测',
  77. ApplyPhase TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否应用反相检测',
  78. ApplyNoise TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否应用噪音检测',
  79. FOREIGN KEY (ItemID) REFERENCES tACACompareItems(ItemID) ON DELETE CASCADE
  80. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='检测计划表';
  81. CREATE INDEX idx_tACADetectPeriod_ItemID ON tACADetectPeriod (ItemID);
  82. -- SQLBook: Code
  83. #创建报警记录表
  84. CREATE TABLE tACAAlarmInfo (
  85. PKID INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
  86. ItemID INT NOT NULL COMMENT '对比项ID',
  87. ItemName VARCHAR(64) NOT NULL COMMENT '对比项名称',
  88. AlarmType INT NOT NULL COMMENT '报警类型,1-静音,2-过载,3-反相,4-不一致,5-噪音',
  89. SoundCardName VARCHAR(64) COMMENT '声卡名称',
  90. SoundCardPCMName VARCHAR(64) NOT NULL COMMENT '声卡PCM通道名称',
  91. CompareRoadNum INT NOT NULL COMMENT '对比通道编号',
  92. CompareRoadName VARCHAR(64) COMMENT '对比通道名称',
  93. CompareRoadType INT COMMENT '通道类型:1、主输出,2、空收,3、主输出空收',
  94. AlarmStartTime TIMESTAMP(6) COMMENT '报警开始时间 (格式:YYYY-MM-DD HH:MM:SS)',
  95. AlarmEndTime TIMESTAMP(6) COMMENT '报警结束时间 (格式:YYYY-MM-DD HH:MM:SS)',
  96. AlarmDuration INT COMMENT '报警持续时间(秒数)',
  97. AlarmFilePath VARCHAR(256) COMMENT '报警录音文件路径',
  98. FileAlarmStartPos INT COMMENT '在报警录音文件中报警开始的时间',
  99. MainRoadPKID INT COMMENT '主通道的PKID',
  100. FileState INT DEFAULT 0 COMMENT '报警文件状态,1-录音中,2-已录音,3-已删除'
  101. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='ACA报警记录表';
  102. CREATE INDEX idx_tACAAlarmInfo_ItemID ON tACAAlarmInfo (ItemID);
  103. CREATE INDEX idx_tACAAlarmInfo_AlarmType ON tACAAlarmInfo (AlarmType);
  104. CREATE INDEX idx_tACAAlarmInfo_CompareRoadNum ON tACAAlarmInfo (CompareRoadNum);
  105. CREATE INDEX idx_tACAAlarmInfo_AlarmStartTime ON tACAAlarmInfo (AlarmStartTime);
  106. CREATE INDEX idx_tACAAlarmInfo_AlarmEndTime ON tACAAlarmInfo (AlarmEndTime);
  107. -- SQLBook: Code
  108. #创建记录录音文件的表格
  109. CREATE TABLE tACARecordFile (
  110. PKID INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
  111. ItemID INT NOT NULL COMMENT '对比项ID',
  112. ItemName VARCHAR(64) NOT NULL COMMENT '对比项名称',
  113. ItemRoadNum INT NOT NULL COMMENT '通道编号',
  114. ItemRoadName VARCHAR(64) NOT NULL COMMENT '通道名称',
  115. SoundCardName VARCHAR(64) NOT NULL COMMENT '声卡名称',
  116. SoundCardPCMName VARCHAR(64) NOT NULL COMMENT '声卡PCM通道编号',
  117. FileStartTime TIMESTAMP(6) NOT NULL COMMENT '录音开始时间 (格式:YYYY-MM-DD HH:MM:SS)',
  118. FileEndTime TIMESTAMP(6) NOT NULL COMMENT '录音结束时间 (格式: YYYY-MM-DD HH:MM:SS)',
  119. FileDuration INT NOT NULL COMMENT '录音文件持续时间(秒数)',
  120. FilePath VARCHAR(256) NOT NULL COMMENT '录音文件路径',
  121. FileState INT DEFAULT 0 COMMENT '录音文件状态,0-未知状态,1-正在录音,2-录音完成,3-文件已删除'
  122. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='ACA录音文件记录表';
  123. CREATE INDEX idx_tACARecordFile_ItemID ON tACARecordFile (ItemID);
  124. CREATE INDEX idx_tACARecordFile_ItemRoadNum ON tACARecordFile (ItemRoadNum);
  125. CREATE INDEX idx_tACARecordFile_FileStartTime ON tACARecordFile (FileStartTime);
  126. CREATE INDEX idx_tACARecordFile_FileEndTime ON tACARecordFile (FileEndTime);
  127. CREATE INDEX idx_tACARecordFile_FileDuration ON tACARecordFile (FileDuration);
  128. -- SQLBook: Code
  129. -- Active: 1756343447531@@192.1.2.49@32124@eqm
  130. -- Active: 1756343447531@@192.1.2.49@32124@mysql
  131. #创建存储声卡PCM通道的表格
  132. CREATE TABLE tACASoundCardPCMChannels (
  133. PKID INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
  134. SoundCardName VARCHAR(64) NOT NULL COMMENT '声卡名称',
  135. PCMName VARCHAR(64) NOT NULL COMMENT 'PCM通道名称',
  136. PCMDesc VARCHAR(256) NOT NULL COMMENT 'PCM通道描述',
  137. IOID VARCHAR(32) COMMENT '输入输出标识,表示这个PCM通道是输入还是输出',
  138. SoundCardNum INT COMMENT '声卡编号',
  139. SoundCardRoadNum INT COMMENT '声卡通道编号'
  140. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='存储声卡PCM通道信息的表格';