我已经在各处搜索了一个合理且逻辑清晰的CHECK
约束来验证电子邮件的格式是否正确。到目前为止,我找到的都是非常冗长和不必要的表达式,例如:
create table t (
email varchar2(320) check (
regexp_like(email, '[[:alnum:]]+@[[:alnum:]]+\.[[:alnum:]]')
)
);
并且。
create table stk_t (
email varchar2(320) check (
email LIKE '%@%.%' AND email NOT LIKE '@%' AND email NOT LIKE '%@%@%'
)
);
当然有更简单的方法。 我正在使用Oracle 11g数据库和SQL Developer IDE。 这是我的代码:
constraint Emails_Check check (Emails LIKE '%_@%_._%')
请问这是验证电子邮件地址最有效的方式吗?