首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Oracle错误ORA-00933

Oracle错误ORA-00933
EN

Stack Overflow用户
提问于 2013-09-23 11:29:51
回答 2查看 2.6K关注 0票数 0

我正在尝试确定列是否是oracle数据库中的主键。

我有以下sql:

代码语言:javascript
复制
SELECT cols.column_name 
FROM all_constraints as cons, all_cons_columns as cols 
WHERE (cols.table_name = 'TABLE_NAME' 
       AND cols.columnName= 'SRC_CODE' 
       AND cons.constraint_type = 'P' 
       AND cons.constraint_name = cols.constraint_name 
       AND cons.owner = cols.owner 
       AND cons.status = 'ENABLED' 
       AND lower(cons.owner)='resmaid') 
ORDER BY cols.table_name

我得到以下错误:

代码语言:javascript
复制
Caused by: java.sql.SQLSyntaxErrorException: ORA-00933: SQL command not properly ended

    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:440)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396)
    at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:837)
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:445)
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:191)
    at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:523)
    at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:193)
    at oracle.jdbc.driver.T4CStatement.executeForDescribe(T4CStatement.java:852)
    at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1153)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1275)
    at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:1477)
    at oracle.jdbc.driver.OracleStatementWrapper.executeQuery(OracleStatementWrapper.java:392)

有一段时间这种sql可能起作用了,不能只记得什么时候(大约两年前)。

这是紧急的,因为我需要连接到这个数据库并做一些数据插入。

提前感谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-09-23 11:34:01

我已经修好了。

两件事。1.删除表名别名中使用的"AS“。column_name在where子句中拼写错误。

请见下文

代码语言:javascript
复制
SELECT cols.column_name
  FROM all_constraints cons,
  all_cons_columns   cols
  WHERE (cols.table_name = 'TABLE_NAME'
    AND cols.column_Name = 'SRC_CODE'
    AND cons.constraint_type = 'P'
    AND cons.constraint_name = cols.constraint_name
    AND cons.owner = cols.owner
    AND cons.status = 'ENABLED'
    AND lower(cons.owner) = 'resmaid')
 ORDER BY cols.table_name;
票数 5
EN

Stack Overflow用户

发布于 2013-09-23 11:49:47

代码语言:javascript
复制
 SELECT cols.column_name
 --modify FROM all_constraints as cons, all_cons_columns as cols  
FROM all_constraints cons, all_cons_columns cols 
WHERE (cols.table_name = 'TABLE_NAME' 
       --modify AND cols.columnName= 'SRC_CODE'  
       AND cols.column_name= 'SRC_CODE' 
       AND cons.constraint_type = 'P' 
       AND cons.constraint_name = cols.constraint_name 
       AND cons.owner = cols.owner 
       AND cons.status = 'ENABLED' 
       AND lower(cons.owner)='resmaid') 
ORDER BY cols.table_name
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18958122

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档