繁体   English   中英

ORA-00907:查询ALTER TABLE Table_Name时缺少右括号修改了Column_Name

[英]ORA-00907: missing right parenthesis at query ALTER TABLE Table_Name MODIFY Column_Name

我有一个要在其中执行此SQL查询的数据库:

ALTER TABLE PARAM_DEF MODIFY UNIT VARCHAR2(400 BYTES);

在SQL Server中,它可以正常工作,但是在Oracle中,我收到此错误:

Error report -
SQL Error: ORA-00907: missing right parenthesis
00907. 00000 -  "missing right parenthesis"

为什么它在我的Oracle数据库上不起作用?

字符长度语义关键字CHARBYTE不是BYTES ,因此只需将其更正为:

ALTER TABLE PARAM_DEF MODIFY UNIT VARCHAR2(400 BYTE);

演示:

create table param_def (unit varchar2(200 byte));

Table PARAM_DEF created.

ALTER TABLE PARAM_DEF MODIFY UNIT VARCHAR2(400 BYTE);

Table PARAM_DEF altered.

desc param_def

Name Null? Type          
---- ----- ------------- 
UNIT       VARCHAR2(400) 

删除varchar2中的bytes

   ALTER TABLE PARAM_DEF MODIFY 
   UNIT VARCHAR2(400);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM