diff --git a/packages/business/src/locale/lang/en.js b/packages/business/src/locale/lang/en.js index 83a61f033..88bb81844 100644 --- a/packages/business/src/locale/lang/en.js +++ b/packages/business/src/locale/lang/en.js @@ -1679,6 +1679,9 @@ export default { 'Click variable name to insert into template', packages_business_ignoreTimePrecision_round: 'Round', packages_business_ignoreTimePrecision_truncate: 'Truncate', + packages_business_treatEmptyStringAsNull: 'Treat empty string as NULL', + packages_business_treatEmptyStringAsNull_tip: `
When enabled, an empty string ("") on either side is considered equal to NULL during field comparison.
+Useful when the target is a database that automatically converts empty strings to NULL (e.g. Oracle), to avoid false-positive field inconsistencies caused by such semantic differences.
`, packages_business_validation_task_type: 'Validation Task Type', packages_business_select_task_to_be_verified: 'Select Task to be Verified', packages_business_drag_file_here: diff --git a/packages/business/src/locale/lang/zh-CN.js b/packages/business/src/locale/lang/zh-CN.js index b0940c378..53657df45 100644 --- a/packages/business/src/locale/lang/zh-CN.js +++ b/packages/business/src/locale/lang/zh-CN.js @@ -1504,6 +1504,9 @@ export default { '点击变量名称插入到模板中', packages_business_ignoreTimePrecision_round: '四舍五入', packages_business_ignoreTimePrecision_truncate: '截断', + packages_business_treatEmptyStringAsNull: '空字符串视为 NULL', + packages_business_treatEmptyStringAsNull_tip: `开启后,源端和目标端在字段校验时,空字符串("")将被视为与 NULL 相等。
+适用于目标端为 Oracle 等会自动把空字符串转换为 NULL 的数据库,避免因数据库语义差异导致的字段不一致误报。
`, packages_business_validation_task_type: '校验任务类型', packages_business_select_task_to_be_verified: '选择被校验的任务', packages_business_drag_file_here: diff --git a/packages/business/src/locale/lang/zh-TW.js b/packages/business/src/locale/lang/zh-TW.js index ed05a554a..7ccef141a 100644 --- a/packages/business/src/locale/lang/zh-TW.js +++ b/packages/business/src/locale/lang/zh-TW.js @@ -1490,6 +1490,9 @@ export default { '點擊變量名稱插入到模板中', packages_business_ignoreTimePrecision_round: '四捨五入', packages_business_ignoreTimePrecision_truncate: '截斷', + packages_business_treatEmptyStringAsNull: '空字符串視為 NULL', + packages_business_treatEmptyStringAsNull_tip: `開啓後,源端和目標端在字段校驗時,空字符串("")將被視為與 NULL 相等。
+適用於目標端為 Oracle 等會自動把空字符串轉換為 NULL 的數據庫,避免因數據庫語義差異導致的字段不一致誤報。
`, packages_business_validation_task_type: '校驗任務類型', packages_business_select_task_to_be_verified: '選擇被校驗的任務', packages_business_drag_file_here: diff --git a/packages/business/src/views/verification/Form.vue b/packages/business/src/views/verification/Form.vue index e5d87ff88..d6e0d8426 100644 --- a/packages/business/src/views/verification/Form.vue +++ b/packages/business/src/views/verification/Form.vue @@ -70,6 +70,7 @@ interface FormData { checkTableThreadNum: number alarmSettings: AlarmSetting[] ignoreTimePrecision?: boolean + treatEmptyStringAsNull?: boolean } interface Task { @@ -184,6 +185,7 @@ const form = reactive({ inconsistentNotifys: ['SYSTEM', 'EMAIL'], checkTableThreadNum: 10, roundingMode: 'HALF_UP', + treatEmptyStringAsNull: true, alarmSettings: [ { type: 'INSPECT', @@ -1090,6 +1092,25 @@ provide('ConnectorMap', ConnectorMap) +