前言
無論是b/s還是c/s的開發中,基本上不使用javascript來對資料庫進行操作。而我了印證我的一個想法,需要往資料庫增加大量的新聞類資訊,因此,我想從各個rss網站上擷取資訊並將資訊匯入到資料庫裡去。其實我也可以選擇使用java,c++,或者是c#等編譯語言,不過,使用javascript語言對這項工作來說是效率最高的。那我又何樂而不為呢?
環境
作業系統:winxp sp2
使用工具:cscript.exe,批次檔
資料庫:oracle 10g作為目標資料庫(還可以使用其他的資料庫,如:sqlserver,access,mysql等等)
資料訪問方式:ADO(還可以使用其他的資料訪問方式,如:odbc,jdbc等等)
代碼:
檔案名稱:rss.js
複製代碼 代碼如下:
//建立資料庫連接對象
var conn = new ActiveXObject("ADODB.Connection");
//建立資料集對象
var rs = new ActiveXObject("ADODB.Recordset");
try{
//資料庫連接串,具體配置請參考:http://www.connectionstrings.com/
//如果不知道如何配置串連串,可以通過配置UDL檔案後用文字編輯器開啟獲得
var connectionstring = "Provider=OraOLEDB.Oracle.1;Password=pwd;Persist Security Info=True;User ID=username;Data Source=ORA";
//開啟串連
conn.open(connectionstring);
//查詢語句
var sql = " select * from tb_col ";
//開啟資料集(即執行查詢語句)
rs.open(sql,conn);
//遍曆所有記錄
while(!rs.eof){
//WScript是Windows 的指令碼宿主對象,詳細情況請在windows協助裡尋找。
//WScript.Echo輸出記錄的內容
WScript.Echo(rs.Fields("id") + "\t" + rs.Fields("name") + "\n");
//下一條記錄
rs.moveNext();
}
//關閉記錄集
rs.close();
//關閉資料庫連接
conn.close();
} catch(e){
//異常報告
WScript.Echo(e.message);
} finally{
//
}
檔案二:run.bat
該檔案是批次檔,使用這個檔案運行rss.js檔案。雖然可以直接運行rss.js檔案,但直接啟動並執行該檔案是使用視窗的方式啟用,這樣有一個不好的地方,就是會每條記錄都彈出一個視窗來顯示。所以我就使用命令列的方式來啟用rss.js檔案,並批處理命令來簡化命令的輸入。
複製代碼 代碼如下:
cscript.exe rss.js
pause
運行run.bat檔案就可以看到類似一下的結果:
複製代碼 代碼如下: