wlzboy
2025-11-13 0bf199cf85a36157113d217363bb96314956b75f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
-- 检查并修复任务类型和状态为NULL的记录
-- 执行时间: 2025-10-26
 
-- 1. 检查task_type为NULL的记录数量
SELECT COUNT(*) as null_task_type_count 
FROM sys_task 
WHERE task_type IS NULL AND del_flag = '0';
 
-- 2. 检查task_status为NULL的记录数量
SELECT COUNT(*) as null_task_status_count 
FROM sys_task 
WHERE task_status IS NULL AND del_flag = '0';
 
-- 3. 查看task_type为NULL的记录详情
SELECT task_id, task_code, task_type, task_status, create_time 
FROM sys_task 
WHERE task_type IS NULL AND del_flag = '0'
ORDER BY create_time DESC
LIMIT 10;
 
-- 4. 查看task_status为NULL的记录详情
SELECT task_id, task_code, task_type, task_status, create_time 
FROM sys_task 
WHERE task_status IS NULL AND del_flag = '0'
ORDER BY create_time DESC
LIMIT 10;
 
-- 5. 修复task_type为NULL的记录(设置为OTHER)
UPDATE sys_task 
SET task_type = 'OTHER' 
WHERE task_type IS NULL AND del_flag = '0';
 
-- 6. 修复task_status为NULL的记录(设置为PENDING)
UPDATE sys_task 
SET task_status = 'PENDING' 
WHERE task_status IS NULL AND del_flag = '0';
 
-- 7. 验证修复结果
SELECT COUNT(*) as remaining_null_task_type 
FROM sys_task 
WHERE task_type IS NULL AND del_flag = '0';
 
SELECT COUNT(*) as remaining_null_task_status 
FROM sys_task 
WHERE task_status IS NULL AND del_flag = '0';
 
-- 8. 添加NOT NULL约束(可选,确保未来不会再出现NULL值)
-- 注意:执行前需要先确保所有记录都已修复
-- ALTER TABLE sys_task MODIFY COLUMN task_type VARCHAR(50) NOT NULL DEFAULT 'OTHER';
-- ALTER TABLE sys_task MODIFY COLUMN task_status VARCHAR(50) NOT NULL DEFAULT 'PENDING';