亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JDBC模板異常表或視圖不存在但實際存在

JDBC模板異常表或視圖不存在但實際存在

30秒到達戰場 2021-08-19 17:29:58
我正在嘗試使用 Spring JDBCTemplate 從 Oracle DB 獲取一些數據:String query = "SELECT * FROM snow.ar_incident WHERE ROWNUM < 10";    Map<String, List<Attachment>> map = jdbcTemplate.query(query, new ResultSetExtractor<Map<String, List<Attachment>>>() {        @Override        public Map<String, List<Attachment>> extractData(ResultSet rs) throws SQLException, DataAccessException {            Map<String, List<Attachment>> map = new HashMap<>();            //Mapping results to map            return map;        }    });但我總是只得到ar_incidient表的例外:引起:org.springframework.jdbc.BadSqlGrammarException: StatementCallback; 錯誤的 SQL 語法 [SELECT * from snow.ar_incident WHERE ROWNUM < 10]; 嵌套異常是 java.sql.SQLSyntaxErrorException: ORA-00942: 表或視圖不存在此代碼適用于其他表,但不適用于此表。我還嘗試使用核心 Java sql 連接從該表中獲取數據:Class.forName("oracle.jdbc.driver.OracleDriver");  Connection con = DriverManager.getConnection(connString, user, pass);    Statement stmt=con.createStatement();   ResultSet rs = stmt.executeQuery("SELECT * from snow.ar_incident WHERE ROWNUM < 10");  它沒有問題,當我在 SQL Developer 中運行查詢時也是如此。我已經多次檢查了這兩種解決方案的連接細節,它們是相同的。為什么我不能ar_incident使用 JDBCTemplate訪問表?
查看完整描述

3 回答

?
慕斯709654

TA貢獻1840條經驗 獲得超5個贊

請檢查是否有贈款,以及是否需要在表名前加上schema.table_name。


查看完整回答
反對 回復 2021-08-19
?
素胚勾勒不出你

TA貢獻1827條經驗 獲得超9個贊

將 JDBC 驅動程序更新到更新版本后,所有問題都消失了。


查看完整回答
反對 回復 2021-08-19
  • 3 回答
  • 0 關注
  • 610 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號