Sybase並沒有像mysql的limit方法,也沒有Oracle的rownum可以用,要做出分頁或RowNum並不是十分容易,在網路上找了很多資料,大概的做法都差不多,主要都是先把原先的表格排序後給於編號,並存入一個暫存的table裡,再利用這個table去Select出要的範圍的資料,不過如果資料量十分驚人時是否還可以用呢?最少比直接把資料回傳至前端再來跑for loop快。
底下提供一個利用join方式來刮掉不需要的範圍:
Sybase並沒有像mysql的limit方法,也沒有Oracle的rownum可以用,要做出分頁或RowNum並不是十分容易,在網路上找了很多資料,大概的做法都差不多,主要都是先把原先的表格排序後給於編號,並存入一個暫存的table裡,再利用這個table去Select出要的範圍的資料,不過如果資料量十分驚人時是否還可以用呢?最少比直接把資料回傳至前端再來跑for loop快。
底下提供一個利用join方式來刮掉不需要的範圍:
hsqldb是個不用安裝也不用啟動的database資料庫,在openoffice裡的base資料庫也是使用此種資料庫,只是再把檔案入放進一個壓縮檔裡而已,所以如果想在openoffice裡操作base資料庫,需要先把檔案解開(在程式裡),再取裡面的資料載來做操作,因為不需要安裝,所以在使用jdbc連線後,如需關閉資料庫,需要使用傳送SQL語法使關閉Statement.execute(“SHUTDOWN”);。
底下有一個簡單的範裡,包含了新增、刪除、查詢、建立資料表及刪除資料表等操作,範例如果如下:
http://sourceforge.net/project/showfiles.php?group_id=23316
解壓縮後把資料夾裡的lib/hsqldb.jar放到classpath裡
SiteMapCreater主要的功能在自動產生SiteMap.xml,只需要在資料庫表格裡建立所要產生的SiteMap網址等資訊就可以執行它來自動產生需要的SiteMap而提交給Google或yahoo等搜尋引擎。
這個程式主要是獨立作業的,可以利用windows或是linux的排程來執行jar run就可以了,這樣子可以減少對伺服器的負擔。
程式的作法是從資料庫取得資料,再把資料加上xml需要的字串,然後最後輸出成檔案就可以了,中間有些需要注意的地方,像是筆數不可太多,此程式設定4000筆會換一個檔案名稱,還有檔案也不可超過太大,8mb以下或更小。
執行後會得到以下檔案,一個index的Sitemap.xml及實際的內容的Info0.xml,另外還需要一個xsl來當讀取樣版的準則,向搜尋引擎只需要提交Sitemap.xml這個檔案就可以了,程式還會自動把所有檔案變成一個zip檔,google可以提交zip檔案做為SiteMap,不過此部份並未成功,有興趣的朋友可以再加以改進。
利用JDBC取得Connection後,可以利用以下幾種方式來執行資料庫的Store Procedure
1.沒參數
CallableStatement cs; try { // 設定 CallableStatement cs = connection.prepareCall("{call myproc}"); // 執行 CallableStatement cs.execute(); } catch (SQLException e) { }
2.有IN參數
Read More