永发信息网

数据库问题急求,为什么说缺失右括号?该怎么解决?

答案:2  悬赏:40  手机版
解决时间 2021-02-15 14:23
  • 提问者网友:爱了却不能说
  • 2021-02-15 09:50
SQL> create table 明星信息表
2 ( 明星编号 int identity(1,1) not null primary key,
3 姓名 nvarnchar(20) not null,
4 性别 nvarnchar(2) not null check (性别 in ('男' , '女')),
5 出生日期 datetime not null,
6 国籍 nvarnchar(20) not null,
7 拼音缩写 varnchar(10) not null,
8 录入时间 datetime not null
9 )
10 ;
( 明星编号 int identity(1,1) not null primary key,
*
第 2 行出现错误:
ORA-00907: 缺失右括号
为什么说缺失右括号?该怎么解决?
最佳答案
  • 五星知识达人网友:老鼠爱大米
  • 2021-02-15 10:17
2 ( 明星编号 int not null primary key,
3 姓名 nvarnchar(20) not null,
4 性别 nvarnchar(2) not null check (性别 in ('男' , '女')),
5 出生日期 datetime not null,
6 国籍 nvarnchar(20) not null,
7 拼音缩写 varnchar(10) not null,
8 录入时间 datetime not null
9 )
10 ;
因为identity(1,1) 导致额.oracle没有这种语法
全部回答
  • 1楼网友:想偏头吻你
  • 2021-02-15 11:05
凡是提示缺失右括号,那就是语句无法执行,但是oracle认为没有语法错误的。一般这种情况都是逻辑失误造成的。我不知道你的逻辑是什么样子,只能是猜测。 你的那个between and是怎么来的? 按照你的逻辑应该是应该是sysdate减去一个值,小于等于v_limit_recond.period/24, 那么那个between是怎么来的? 个人估计你是想表达在一定时间内的汇总,那么应该是 tran_date_time应该是between sysdate-v_limit_recond.period/24 and sysdate 这就是个意思,并不是就是这么写,具体的时间写法忘记了,这个你要自己查一查才行。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯