前言
無論是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文件就可以看到類似一下的結果:
代碼如下:
1 欄目1
2 欄目2
3 欄目3
4 欄目4