Oracle APEX 在使用转换规则加载数据期间验证输入

Oracle APEX validate Input during Data Load with Transformation Rule

APEX 中,当执行 数据加载(例如将 csv 文件上传到 APEX 应用程序)时,是否可以 使用转换规则验证输入数据?

例如,假设要上传有关本月已售出汽车的数据。 目标 table 具有列 car_manufacturer 和 num_car_sold.

列 car_manufacturer 只能接受三个值,例如 ('A1'、'A2'、'A3')。 在一个伪PLSQL中,仅供参考:

IF :car_manufacturer IN ('A1, A2, A3') then :car_manufacturer else <error>

如何在上传阶段检查这个?是否可以使用转换规则,以便在失败时显示 returns 一条错误消息?其他方法?

提前致谢。

如何对列 "car_manufacturer" 的 table 进行检查约束?

ALTER TABLE TABLE_NAME
ADD CONSTRAINT CHECK_CAR_MANUFACTURER
CHECK ( CAR_MANUFACTURER in ('A1', 'A2', 'A3'));

您可以根据其他答案对 table 定义施加约束,或者如果您只想要使用数据加载时的错误消息,则可以使用 Table 查找.

  1. 转到共享组件 -> 数据加载定义
  2. 打开要编辑的数据加载定义
  3. 创建Table查找
  4. Select 列(例如 car_manufacturer)
  5. Table Lookup 属性设置为包含有效值列表的 table(您需要 table或对此的看法)
  6. 插入新值设置为如果设置为'No'(默认值)如果输入的查找列值不存在,则不会在查找 table 中创建新记录。如果设置为 'Yes',则将在查找 [=49] 中创建记录=] 使用上传列和上传键列将从新创建的记录中检索。)
  7. 错误消息设置为您想要return如果未找到匹配项的消息。