check约束报错!!在线等

ray_suen 2012-05-23 02:44:49
11g创建表和约束报错,同样的表和约束我不用中文就没问题,可以创建
我也尝试在10g上创建都没问题,但不知道为什么11g报错,求解
SQL> create table test15 (name char(10), sex char(4) constraint ck_sex_test13 check (sex='男'or sex='女'));
create table test15 (name char(10), sex char(4) constraint ck_sex_test13 check (sex='男'or sex='女'))
*
ERROR at line 1:
ORA-00907: missing right parenthesis


SQL> create table test15 (name char(10), sex char(4) constraint ck_sex_test13 check (sex='0'or sex='1'));

Table created.
...全文
121 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
EnForGrass 2012-05-23
  • 打赏
  • 举报
回复
这样就行了
sex char(4) check(sex='男' or sex='女')

如果是添加约束
alter table test15 add constraint sex check(sex in ('男','女'));
tongzhipeng5699 2012-05-23
  • 打赏
  • 举报
回复
我开始猜是中英文环境的问题不过实验了以下,不是这个原因,我在英文环境下,也能正常创建
我的也是11g
你的错误的提示是你少了个括号,你看一下是不是因为折行而产生的错误。

17,082

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧