Files

53 lines
2.1 KiB
SQL
Raw Permalink Normal View History

-- v6 设备级采集模式:达梦数据库升级后验证
-- 本脚本只读。所有检查通过后才允许启动新版 syslog-serve JAR。
-- 1. 预期 1 行:VARCHAR2(16)、NULLABLE=N、DATA_DEFAULT 包含 BOTH。
SELECT COLUMN_NAME, DATA_TYPE, DATA_LENGTH, NULLABLE, DATA_DEFAULT
FROM USER_TAB_COLUMNS
WHERE TABLE_NAME = 'DEVICE_DEVICE'
AND COLUMN_NAME = 'COLLECTION_MODE';
-- 2. 预期 1 行:CONSTRAINT_TYPE=C、STATUS=ENABLED。
SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE, STATUS
FROM USER_CONSTRAINTS
WHERE TABLE_NAME = 'DEVICE_DEVICE'
AND CONSTRAINT_NAME = 'CK_DEVICE_COLLECTION_MODE';
-- 3. 预期 INVALID_MODE_TOTAL=0。
SELECT COUNT(*) AS INVALID_MODE_TOTAL
FROM DEVICE_DEVICE
WHERE COLLECTION_MODE IS NULL
OR COLLECTION_MODE NOT IN ('SYSLOG_ONLY', 'API_ONLY', 'BOTH');
-- 4. 首次升级且尚未调用管理 API 时,预期只有 BOTH,数量与预检 DEVICE_TOTAL 一致。
SELECT COLLECTION_MODE, COUNT(*) AS DEVICE_TOTAL
FROM DEVICE_DEVICE
GROUP BY COLLECTION_MODE
ORDER BY COLLECTION_MODE;
-- 验证脚本不创建测试设备,也不绑定任何现场 device_id。
-- 5. 预期 1 行:LOOKBACK_SECONDS、NULLABLE=N、DATA_DEFAULT 为 0。
SELECT COLUMN_NAME, DATA_TYPE, NULLABLE, DATA_DEFAULT
FROM USER_TAB_COLUMNS
WHERE TABLE_NAME = 'DEVICE_COLLECT_API_CONFIG'
AND COLUMN_NAME = 'LOOKBACK_SECONDS';
-- 6. 仅统计已有任务分布,不要求全部为 0;升级脚本不会覆盖已有任务的显式配置。
SELECT LOOKBACK_SECONDS, COUNT(*) AS TASK_TOTAL
FROM DEVICE_COLLECT_API_CONFIG
GROUP BY LOOKBACK_SECONDS
ORDER BY LOOKBACK_SECONDS;
-- 7. 预期 1 行且 SEARCH_CONDITION 包含 PAGE_SIZE BETWEEN 1 AND 50000。
SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE, STATUS, SEARCH_CONDITION
FROM USER_CONSTRAINTS
WHERE TABLE_NAME = 'DEVICE_COLLECT_API_CONFIG'
AND CONSTRAINT_NAME = 'CK_DC_API_CFG_PAGE';
-- 8. 预期 1 行且 SEARCH_CONDITION 包含 MAX_RESPONSE_BYTES BETWEEN 1024 AND 536870912。
SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE, STATUS, SEARCH_CONDITION
FROM USER_CONSTRAINTS
WHERE TABLE_NAME = 'DEVICE_COLLECT_API_CONFIG'
AND CONSTRAINT_NAME = 'CK_DC_API_CFG_RESP';