为啥这会导致 oracle 错误? ORA-00907
Posted
技术标签:
【中文标题】为啥这会导致 oracle 错误? ORA-00907【英文标题】:Why does this cause an oracle error? ORA-00907为什么这会导致 oracle 错误? ORA-00907 【发布时间】:2010-02-12 07:59:53 【问题描述】:这让我发疯了,谁能帮我理解为什么以下语句都返回以下错误?
create table JMS_PENDING_MESSAGE (id number primary key, queuex nvarchar2(200), messagex nclob(1000));
create table JMS_PENDING_MESSAGE (id number primary key, queuex nvarchar2(200), messagex nclob(10000));
create table JMS_PENDING_MESSAGE (id integer primary key, queuex nvarchar2(200), messagex nclob(10000));
还有错误信息:
ORA-00907: missing right parenthesis
如果有区别的话,我会使用 ojdbc5.jar 在 JDBC 上运行!非常感谢任何帮助,我要疯了
【问题讨论】:
【参考方案1】:CLOB 是 CLOB(并且,正如 o.k.w. 指出的那样,NCLOB 也是 NCLOB)。你不需要给它一个大小:
create table JMS_PENDING_MESSAGE
(id integer primary key, queuex nvarchar2(200), messagex nclob);
【讨论】:
你的意思是“一个 NCLOB 是一个 (C)LOB”:)以上是关于为啥这会导致 oracle 错误? ORA-00907的主要内容,如果未能解决你的问题,请参考以下文章