You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
1.6 KiB
32 lines
1.6 KiB
|
1 month ago
|
-- ======================================================
|
||
|
|
-- 修复:t_alarm_report 表检查约束问题
|
||
|
|
-- 日期:2026-06-26
|
||
|
|
-- 说明:修复 alarm_source、alarm_level 等字段的检查约束,使其与前端数据一致
|
||
|
|
-- ======================================================
|
||
|
|
|
||
|
|
-- 1. 删除旧的 alarm_source 检查约束(如果存在)
|
||
|
|
ALTER TABLE t_alarm_report DROP CONSTRAINT IF EXISTS t_alarm_report_alarm_source_check;
|
||
|
|
|
||
|
|
-- 2. 删除 alarm_level 检查约束(如果存在),允许为 null
|
||
|
|
ALTER TABLE t_alarm_report DROP CONSTRAINT IF EXISTS t_alarm_report_alarm_level_check;
|
||
|
|
|
||
|
|
-- 3. 删除 report_type 检查约束(如果存在)
|
||
|
|
ALTER TABLE t_alarm_report DROP CONSTRAINT IF EXISTS t_alarm_report_report_type_check;
|
||
|
|
|
||
|
|
-- 4. 删除 evidence_complete 检查约束(如果存在)
|
||
|
|
ALTER TABLE t_alarm_report DROP CONSTRAINT IF EXISTS t_alarm_report_evidence_complete_check;
|
||
|
|
|
||
|
|
-- 5. 删除 is_first_alarm 检查约束(如果存在)
|
||
|
|
ALTER TABLE t_alarm_report DROP CONSTRAINT IF EXISTS t_alarm_report_is_first_alarm_check;
|
||
|
|
|
||
|
|
-- 6. 删除 is_enterprise 检查约束(如果存在)
|
||
|
|
ALTER TABLE t_alarm_report DROP CONSTRAINT IF EXISTS t_alarm_report_is_enterprise_check;
|
||
|
|
|
||
|
|
-- 7. 更新现有数据的 alarm_source(确保所有数据符合新约束)
|
||
|
|
UPDATE t_alarm_report SET alarm_source = 'system_register'
|
||
|
|
WHERE alarm_source NOT IN ('110_transfer', 'system_register') OR alarm_source IS NULL;
|
||
|
|
|
||
|
|
-- 8. 重新添加 alarm_source 检查约束(只允许两个值)
|
||
|
|
ALTER TABLE t_alarm_report ADD CONSTRAINT t_alarm_report_alarm_source_check
|
||
|
|
CHECK (alarm_source IN ('110_transfer', 'system_register'));
|