📘 设置字段 - 校验规则
字段校验规则用于在数据导入过程中,校验字段值是否符合指定规则,从而提升数据质量、避免脏数据进入系统。
✨ 为什么需要字段校验
- ⛔ 防止错误格式(如非法邮箱、手机号)
- 🧮 限制数值范围(如金额不能为负)
- 📅 校验日期格式,避免入库失败
- 🔒 验证字段是否非空、枚举合法性等
🛠 如何设置校验规则
🛠 校验规则支持类型
| 规则类型 |
功能描述 |
参数(rule)示例 |
适用字段类型 |
失败错误类型 |
regex_match |
使用正则表达式验证字段格式 |
{ "pattern": "^[A-Z0-9-]+$" } |
字符串 |
format_error |
number_range |
验证数值是否在指定范围 |
{ "min": 0, "max": 100 } |
数字 |
out_of_range |
date_format |
验证日期格式是否正确 |
{ "format": "%Y-%m-%d" } |
日期 |
format_error |
length_limit |
验证字段最大长度 |
{ "max_length": 255 } |
字符串 |
length_exceeded |
positive_number |
验证字段值是否为正数 |
{} |
数字 |
out_of_range |
id_card_number |
验证身份证号格式 |
{} |
身份证号 |
format_error |
email_format |
验证邮箱格式 |
{} |
邮箱 |
format_error |
phone_format |
验证手机号格式 |
{} |
手机号 |
format_error |
url_format |
验证URL格式 |
{} |
URL |
format_error |
enum_values |
验证字段是否为允许值之一 |
{ "allowed_values": ["A", "B"] } |
枚举 |
invalid_value |
required |
字段不能为空 |
{} |
所有类型 |
missing |
✅ 校验执行逻辑
- 字段校验规则会在预处理之后执行
- 如字段配置多个校验,将按配置依次执行
- 若某个规则校验失败,会按照错误处理方式处理
建议:务必为关键字段添加 required 校验,避免缺失重要数据。
设置错误处理规则(推荐)
建议设置错误处理规则,以应对校验时常见匹配异常:
字段错误处理规则用于定义在校验失败时,系统如何响应。你可以针对不同类型的错误(如格式错误、长度限制等)设置不同的处理策略,以确保导入过程尽可能容错、可控、不中断。
📌 为什么要设置错误处理规则?
- 默认校验行为为失败中断导入,不利于处理大量历史或脏数据。
- 通过规则设置可以灵活处理异常数据:如忽略、填默认值、置空等。
- 支持按错误类型分别设置,让控制更加细致精准。
🧩 错误类型说明
| 错误类型 |
错误说明 |
示例 |
format_error |
字段格式不符合要求(如日期格式错误、邮箱格式错误) |
2025/13/99 非法日期 |
out_of_range |
数值超出限定范围 |
年龄字段为 150,超过最大限制 |
length_exceeded |
字符串长度超出限制 |
商品备注超过 255 个字符 |
invalid_value |
字段值不在允许的枚举列表中 |
状态字段出现 "未知" |
missing |
字段缺失,值为空 |
必填字段为空 |
🔧 支持的错误处理动作
| 处理方式 |
说明 |
适用场景 |
| 失败 |
记录错误并中止该条记录导入 |
核心字段必须满足格式 |
| 忽略错误 |
记录日志,但继续导入 |
非关键字段 |
| 使用默认值 |
字段使用系统或用户定义的默认值 |
缺失数据容错 |
| 置空 |
将字段值设置为空(null) |
字段可为空,跳过无效数据 |
| 过滤该行 |
整行数据将跳过,不再导入 |
严重错误、无效数据整行丢弃 |
📝 示例:错误处理规则配置界面
✅ 推荐做法:为所有字段设置合理的错误处理规则,避免因单个字段异常导致整批数据无法导入。