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>


原文鏈接:http://www.linuxidc.com/Linux/2011-06/36749.htm

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章