霸王硬上弓之-javascript 鏈接oracle數據庫

    用這種不入流的方式來鏈接數據庫,展現數據庫的內容,雖然邏輯上就不合理,不該該採用。可是爲了方便工做,我仍是霸王硬上弓了  javascript

<!--自定的函數集合-->
<script type="text/javascript">
//@全局變量定義區
	var  g_Oracle_Instance 	= new ActiveXObject("ADODB.Connection");
	var  g_Oracle_RecordSet 	= new ActiveXObject("ADODB.Recordset");
	var  g_Oracle_EXE_Sql_Open	= 0;		
	
//@數據庫登陸
function INIT_ORACLE(){
	try{
  	g_Oracle_Instance.Open("DSN=odbcsid;SERVER=127.0.0.1;UserID=use;Password=passwd;Database=odbcsid;Port=1521");
	}catch(e){
		alert("用戶名,密碼或者實例名錯誤,拒絕登陸");
		} 
	}
	
//@數據庫斷開鏈接,釋放資源
function DELETE_ORACLE(){	
		 g_Oracle_RecordSet.close();
		 g_Oracle_Instance.close();
		 g_Oracle_Instance = null;
	}
	
//@執行SQL,查詢數據
function Oracle_EXE_Sql(sql){
	try{
	if(g_Oracle_EXE_Sql_Open)
		g_Oracle_RecordSet.close();
	g_Oracle_RecordSet.open(sql,  g_Oracle_Instance);
	g_Oracle_EXE_Sql_Open = 1; 
	}catch(e){
		g_Oracle_EXE_Sql_Open = 0;
		}
如下片斷爲處理結果片斷,自行修改使用,只說明使用方法【其中取值的時候RecordSet加索引後必定要記得加.value,具體差異你能夠驗證測試看看其中的不一樣,哈哈。我的測試遇到分析的結果是:若是不加.value,相似指針指向,被操做數指向了一個結果集中的某一個位置,假如稍後關閉結果集,前面的數據在引用獲取值的時候會報錯,提示,已經被關閉】
while(!g_Oracle_RecordSet.EOF){
   g_parent_id[g_parent_cnt] = g_Oracle_RecordSet(0).value;
   g_parent_name[g_parent_cnt] = g_Oracle_RecordSet(1).value;
   g_Oracle_RecordSet.moveNext;
  }



</script>
相關文章
相關標籤/搜索