JSP+Oracle 資料輸出少了好幾筆? |
答題得分者是:neoart
|
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
各位大大好!小弟最近在做jsp+oracle,而原本的jsp+sqlserver
可以輸出資料7百多筆,現在資料庫改成oracle後 結果資料只能輸出2百多筆 且sqlserver的資料是有照順序跑的,如:DocID 1~738 但匯到oracle的資料卻沒有照順序跑,如:DocID 300~380,1~298,381~738 我則是用 Select * From FieldType1 Order by DocID ASC 才可以正常輸出 但是卻只能輸出2百多筆資料 請問各位大大這是怎麼回事呢? 編輯記錄
b7307024 重新編輯於 2007-05-02 18:57:52, 註解 無‧
|
neoart
版主 發表:22 回覆:582 積分:425 註冊:2003-05-09 發送簡訊給我 |
|
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
謝謝大大的回覆!以下是我的程式碼設定:
1.driver型態 Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); Connection con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:peter","user","user"); 2.oracle版本------9i 3.createStatement參數------沒帶任何參數,如下: Statement smt = con.createStatement(); 我用的jdbc driver是我去灌好的oracle資料夾找到來用的,名稱叫ojdbc14.jar,不是去網路上下載下來用的 因為找不到可以合乎jdk 1.5版本,本想說不能用,結果可以連接且抓到資料,但是卻發生只能抓到少數資料的情況 不知道該如何解決說! |
neoart
版主 發表:22 回覆:582 積分:425 註冊:2003-05-09 發送簡訊給我 |
1.到oracle的JDBC單元,下載driver http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html
2.copy 你所下載的JDBC jar檔 到 server/default/lib目錄之下 3.Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); statement的參數要改一下 4.我記得tomcat有DataSource的jndi設定,何不把connection的存活給DataSource Connection Pool去決定? 這樣對你的效能比較有幫忙哦 http://tomcat.jaxwiki.org/jndi-datasource-examples-howto.html
編輯記錄
neoart 重新編輯於 2007-05-02 23:36:40, 註解 無‧
|
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
謝謝大大的回覆!針對你的回覆我的作了以下的動作:
1.我的資料庫是Oracle9i 9.2.0.1於是我去下載了Oracle9i 9.2.0.1 JDBC Driver,檔名是ojdbc14.jar,網站上是寫For use with JDK 1.4,但我的jdk是1.5,不知道這樣是不是有關係呢? 2.我把下載好的ojdbc14.jar分別放到Tomcat 5.5\common\lib及Tomcat 5.5\server\lib。 3.我把這ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE參數加到createStatement()裡面 P.S:ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE的意思是什麼呢? 做了以上的動作以後,還是只抓到200多筆資料,於是我在想10g的jdbc好像有for jdk1.5版的 但最後還是只抓到200多筆資料,請問大大該如何解決呢? |
neoart
版主 發表:22 回覆:582 積分:425 註冊:2003-05-09 發送簡訊給我 |
真歹勢
我只有用到oracle 8.1.7 & JDK1.4.2 不過你要不要花點時間安裝一下jdk1.4.2來試看看? (最多不過是改一下JAVA_HOME參數,不是嗎?) 有人說是要用把oracle的classesXXX.zip也放進去,我想這倒是可以試看看 Statement的參數改用為 "ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE" 看看吧
編輯記錄
neoart 重新編輯於 2007-05-03 10:47:25, 註解 無‧
|
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
謝謝大大的回覆!我解決了!
差別在jsp oracle底下,需要加上檢查欄位是否為null的程式碼 如下: <textarea cols="60" rows="10" class="java" name="code"> docid = rs.getInt("DocID"); name = rs.getString("FieldName1"); if(name == null){ name = ""; } passport = rs.getString("FieldName3"); if(passport == null){ passport = ""; } birth = rs.getDate("FieldName4"); schedul = rs.getString("FieldName6"); if(schedul == null){ schedul = ""; } indate = rs.getDate("FieldName5"); add_tmp = rs.getString("FieldName7"); address = ""; if(add_tmp != null){ address = add_tmp.replaceAll("郵遞區號",""); } </textarea> |
neoart
版主 發表:22 回覆:582 積分:425 註冊:2003-05-09 發送簡訊給我 |
|
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
|
neoart
版主 發表:22 回覆:582 積分:425 註冊:2003-05-09 發送簡訊給我 |
|
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |