如题,我写了这样的约束alter table t1
add constraint ck check(name like 'zf...')我的意思是必须有zf开头,然后后面跟3个随便的字符,可是不行
难道 .在oracle中不是通配符吗?那应该是什么?
add constraint ck check(name like 'zf...')我的意思是必须有zf开头,然后后面跟3个随便的字符,可是不行
难道 .在oracle中不是通配符吗?那应该是什么?
解决方案 »
- 求教!ORACLE什么对象我可以select但是在ALL_OBJECTS中查询不到
- Oracle数据库实例之间连续大量插入数据时丢失记录
- Oracle 还原数据库时的字符集问题
- 如何建立定长序列,如001~999,不足三位的用'0'补齐?
- reuse、nochche是什么意思啊?
- 请问:这段插入代码有什么问题,执行时会报错。高手进来看一下
- 程序能够运行, 但当连接到SQL/PLUS出现提示:ORA-12514 : TNS: listener could not resolve SERVICE_NAME given in connect
- redhat9下面安装oracle817出现错误,高手快帮手看看
- 菜鸟求救!(关于oracle集合的内容)
- 封装好的程序调用Oracle失败
- 如何远程访问oracle10G EM控制台
- Oracle中FLWOR表达式的应用
那么在oracle中呢
难道sqlserver用...代表单个字符?我以前怎么用_ _是sql标准吧大学课本里这样写的,应该就是标准,不针对某个具体数据库数字似乎也是[0-9]
Error at line 1
ORA-02290: check constraint (HR.CHK_NUM) violated不过要Oracle10g或以上版本才支持正则表达式。
还有,如果要这样判断输入数字,还不如这样建表:create table t12 (num number(3) constraint chk_num check(num between 0 and 999));insert into t12 values (-22);insert into t12 values (-22)
Error at line 1
ORA-02290: check constraint (HR.CHK_NUM) violated
楼主可以google一下正则表达式的用法