霸王硬上弓之-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>
相关文章
相关标签/搜索