【问题标题】:ora -00907 -missing right parenthesisora -00907 - 缺少右括号
【发布时间】:2018-12-06 05:18:13
【问题描述】:

我需要在 oracle 中将某些列从一个表插入到另一个表。如下所示

insert into table2 (column1,column2,.....,columnn)     
select  (column1,column2,.....,columnn)     
from table1      
where condition;

但我得到了

'ORA - 00907 缺少右括号错误'

在选择语句本身中。

我正在单独执行 select 语句,但仍然得到 ​​p>

'ora -00907 缺少右括号'

错误。

任何更正上述内容的建议都会有所帮助。

提前致谢

【问题讨论】:

  • 去掉SELECT 列表中那些无用的括号。
  • 感谢您的帮助。这是我在选择语句中加上括号时漏掉的一个错字。

标签: oracle ora-00907


【解决方案1】:

我不确定将整个 select 子句放在括号内是否有效。我会把你的查询写成:

INSERT INTO table2 (column1, column2, ..., columnN)
SELECT column1, column2, ..., columnN
FROM table1
WHERE <condition>;

【讨论】:

  • 谢谢蒂姆。它有帮助。
  • 是的,在我从 select 语句中删除括号后它起作用了。我之前漏掉的一个错字。
【解决方案2】:

ora -00907 -missing right parenthesis 是语法错误。在您的代码中的某处,您有错字或类似问题。也许它是一个悬挂的逗号,也许它是一个杂散的关键字,也许它是一个意外的左括号或没有匹配的右括号。

问题是,我们无法确定从您发布的伪代码中发现错误。所以要么你需要在这里发布你的整个声明,要么你需要冷静地看待你的代码。老实说,以一种独立的方式看待我们自己的代码是我们作为开发人员所需要的一项关键技能,所以这对你来说是一个很好的练习。

【讨论】:

    猜你喜欢
    • 2018-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多