在Oracle apex中的列上设置自定义验证。

问题描述 投票:0回答:1

我想在名为:P8_HOME和:P8_AWAY的列上创建自定义验证。你是管理员,想为将来添加新的比赛。如果任何一支球队在同一天已经有一场比赛,而你想添加一场比赛,那么系统会显示一个错误信息。

例如,当输入比赛日期,主队和客队,并按下 "添加按钮 "时,系统会查看其中一支球队是否在当天有比赛,如果有,则系统会显示错误信息。如果有,系统就会显示信息并拒绝。

如何在处理过程中添加验证,以下是变量列表。P8_GAME_ID P8_GAME_DATE P8_HOME P8_AWAY P8_HOME_POINT P8_AWAY_POINT

enter image description here

sql oracle date validation apex
1个回答
0
投票

你可以创建 页面级验证 为此。

  1. 创建验证,类型为 "无行返回"(即如果有行返回,则按验证失败处理)。
  2. 把 "SQL查询 "放在下面进行验证检查。
    SELECT * 
    FROM <your_table_name> games
    WHERE games.home = :P8_HOME
    AND games.away = :P8_AWAY
    /*if you are using different date format from application date format, then use TO_DATE to convert into date */
    AND games.date = :P8_GAME_DATE 
    /* For new rows consider all rows in DB, for existing rows, don't consider current row*/
    AND (:P8_GAME_ID IS NULL
      OR games.game_id != :P8_GAME_ID)
  1. 增加适当的 "错误信息 "和 "服务器端条件"

0
投票
  • 右键点击您的必选页面项目,并创建验证。
  • 另一个是创建过程和选择plsql块,你可以验证所有的验证,如if else条件的基础上,然后通过你的错误信息rasie_application_error方法。
© www.soinside.com 2019 - 2024. All rights reserved.