【问题标题】:Oracle Apex email validationOracle Apex 电子邮件验证
【发布时间】:2017-12-20 15:21:05
【问题描述】:

我有一个项目要输入电子邮件 ID item_email

我需要验证电子邮件 ID 项 item_email,该电子邮件 ID 不应该已存在于表中。

所以我必须创建电子邮件验证,请帮助我继续此操作。

【问题讨论】:

    标签: oracle-apex oracle-apex-5


    【解决方案1】:

    您需要创建一个No Rows Returned 类型的ValidationProcessing 选项卡),并将以下内容放入验证查询中:

    select 1
      from table_with_emails
     where email_column = :P_EMAIL_ITEM
    

    UPD
    检查电子邮件:创建一个新的验证(这比在一个中添加两个检查更容易)类型为PL/SQL Expression,并添加以下内容:

    regexp_like (:P_EMAIL_ITEM, '^[A-Za-z]+[A-Za-z0-9.]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$')
    

    创建新验证还允许您定义两种不同的错误消息:电子邮件已存在和格式错误。

    【讨论】:

    • 你好有没有办法在电子邮件字段中只传递一个电子邮件ID。例如:在 item_email 中它应该只接受一个电子邮件 ID
    • 例如,您可以计算字符串中有多少个符号@。应该只有一个。或者您可以尝试找到验证电子邮件格式的解决方案。我认为这里有很多。两封或多封电子邮件将无法通过此验证。
    • 您好,它是一个文本字段,我如何计算该文本字段的 @ 以及我必须在哪里做,请您再扩大答案,谢谢
    • @Abinnaya 更新。
    • 那个格式验证太严格了。实际上坚持the RFC 几乎从来没有做过,因为它是不切实际的宽容,但这种错误在严格方面太过分了。 quick read 可以帮助您了解一些观点。
    【解决方案2】:

    另外,考虑在电子邮件列上创建唯一索引。 Apex 验证可以完成这项工作,但不会阻止其他插入数据的方式。

    【讨论】:

      猜你喜欢
      • 2018-07-10
      • 1970-01-01
      • 1970-01-01
      • 2018-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多