ORA-00928: 缺失 SELECT 关键字

向表格中插入记录(insert into)时候,报异常,提示:ORA-00928: 缺失 SELECT 关键字(missing SELECT keyword)

 

原因:

1、如网上大部分出现的类似,是因为列名上不能添加单引号

 如写成INSERT INTO USERTAB ('uniPositionCode','transferGroupName','appCode','appName','transferPort','cfg_network','transferProtocol','transferip','insideState') VALUES('01330000','1','20','4343','9513','0','9513','0.0.0.0','0') 就会报错;

2、另一个原因可能是你的oracle数据库表名或列名属于sql中的保留字,如表名写成PASSWORD,有列名写成USER

 

最常见的oracle保留字有这些:
ACCESS ADD ALL ALTER AND ANY AS ASC AUDIT BETWEEN BY CHAR
CHECK CLUSTER COLUMN COMMENT COMPRESS CONNECT CREATE CURRENT
DATE DECIMAL DEFAULT DELETE DESC DISTINCT DROP ELSE EXCLUSIVE
EXISTS FILE FLOAT FOR FROM GRANT GROUP HAVING IDENTIFIED
IMMEDIATE IN INCREMENT INDEX INITIAL INSERT INTEGER INTERSECT
INTO IS LEVEL LIKE LOCK LONG MAXEXTENTS MINUS MLSLABEL MODE
MODIFY NOAUDIT NOCOMPRESS NOT NOWAIT NULL NUMBER OF OFFLINE ON
ONLINE OPTION OR ORDER PCTFREE PRIOR PRIVILEGES PUBLIC RAW
RENAME RESOURCE REVOKE ROW ROWID ROWNUM ROWS SELECT SESSION
SET SHARE SIZE SMALLINT START SUCCESSFUL SYNONYM SYSDATE TABLE
THEN TO TRIGGER UID UNION UNIQUE UPDATE USER VALIDATE VALUES
VARCHAR VARCHAR2 VIEW WHENEVER WHERE WITH

 

 

ps:使用hibernate,只有修改配置文件,在列名上加"[]"如下:

      <id name="uid" type="java.lang.String">
            <column name="[UID]" />
            <generator class="assigned" />
        </id>

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: ORA-00928Oracle数据库的错误代码,表示在SQL语句中缺少SELECT关键字。这通常是由于SQL语句的语法错误或拼写错误导致的。要解决此问题,需要检查SQL语句并确保正确使用SELECT关键字。 ### 回答2: ORA-00928Oracle 数据库中的一个错误代码,意思是缺少 SELECT 关键字。在 Oracle SQL 语句中,SELECT 关键字用来指定要查询的列和从哪张表中查询数据。因此,省略 SELECT 关键字会导致 Oracle 数据库引擎无法识别查询语句,从而出现 ORA-00928 的错误提示。 ORA-00928 错误通常是由输入错误的 SQL 语句引起的,例如未正确编写 SELECT 语句或 SELECT 语句中缺少必要的关键字、拼写错误或语句错误等。此外,如果输入的 SQL 语句中包含多个语句,而没有以分号(;)分隔,也会导致该错误的出现。 为了解决这个问题,我们需要检查查询语句并确定是否存在输入错误。首先,我们需要检查 SQL 语句的语法是否正确。我们必须确保查询语句中包括 SELECT 关键字且正确编写了语句。同时,我们还需要检查查询语句以及相关的语句是否已正确地以分号(;)分隔。如果发现输入错误,应及时对其进行纠正。 此外,如果您不确定如何编写正确的 SQL 语句或无法纠正输入错误,则可能需要寻求专业帮助。最好咨询有经验的数据库管理员或使用在线资源,如 Oracle 官方文档、查询引擎等。 总之,ORA-00928 错误通常是由输入错误的 SQL 语句引起的。通过仔细检查查询语句并纠正语句的错误,可以有效地解决这个问题。 ### 回答3: ORA-00928是一个Oracle数据库的错误代码,它表示在SQL查询中缺少了SELECT关键字,即Oracle数据库无法理解当前的查询语法。 出现这个错误代码的原因可能有很多种,以下是一些常见的情况: 1. 查询语法错误:在编写SQL查询语句时,可能会出现语法错误,例如忘记写SELECT关键字,或者少了关键字中的某些单词或符号。 2. 数据库版本不兼容:有时候,Oracle数据库可能会升级到新的版本,而当前使用的查询语法则可能已经过时或不再被支持,导致出现这个错误。 3. 编辑器或工具错误:如果您正在使用SQL编辑器或其他工具编写查询语句,那么这些工具可能会出现故障或解析错误,导致在您的查询语句中缺少SELECT关键字。 为了解决ORA-00928错误,您需要按以下步骤进行操作: 1. 检查查询语法:仔细检查查询语句中的每个单词和符号,确认是否少了SELECT关键字或其他必要的元素。 2. 确认数据库版本:查看数据库版本是否与查询语法兼容,如有必要,请进行相应的升级或更改查询语法。 3. 更换编辑器或工具:如果您怀疑查询语句中的错误可能是由SQL编辑器或其他工具引起的,请考虑更换编辑器或工具。 总之,ORA-00928错误通常是由于查询语法错误、数据库版本不兼容或编辑器/工具故障引起的。通过检查查询语法、核实数据库版本或更换编辑器/工具等方法,您可以轻松解决这个问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值