asp下用OracleInProcServer完成对Oracle的连接和操作

发表于:2007-06-30来源:作者:点击数: 标签:
% Response.CharSet=gb2312 tblname=request(tb) Dim objOraSession,objOraDb Dim strDbUser,strDbPwd,strDbConn Call ConnectDB() Sub ConnectDB() @#连接数据库 On Error Resume Next strDbUser = liujincai @#连接用户名 strDbPwd = ljc1001 @#用户密码 s
< % Response.CharSet="gb2312"
tblname=request("tb")
Dim objOraSession,objOraDb
Dim strDbUser,strDbPwd,strDbConn
Call ConnectDB()
Sub ConnectDB() @#连接数据库
On Error Resume Next
strDbUser = "liujincai" @#连接用户名
strDbPwd = "ljc1001" @#用户密码
strDbConn = "hp1" @#连接字符串
Set objOraSession = Server.CreateObject("OracleInProcServer.XOraSession")
Set objOraDB = objOraSession.OpenDatabase(strDbConn,strDbUser & "/" & strDbPwd,0)
If Err.Number>0 then
Response.Write "错误 :" & err.description & ""
response.end
End if
End Sub
Sub EndDB()
Set objOraDB = Nothing
Set objOraSession = Nothing
End Sub
Function getTableList(str)
Dim strSql,strTmp
Dim objRs
strSql = "Select at.table_name as tname,au.username as uname from all_tables at,all_users au Where au.username=at.owner order by au.username"
Set objRs = objOraDb.DbCreateDynaset(strSql,0)
While Not objRs.Eof
strA = objRs("uname") & "." & objRs("tname")

If str=strA then
strTmp = strTmp & "" & strA & ""
Else
strTmp = strTmp & "" & strA & ""
End if
objRs.MoveNext
Wend
Set objRs = Nothing
getTableList = strTmp
End Function
% >

<form name=form1 action="aa.asp" method=POST target="main">
<table width="100%" border=0 align="center">
<tr><td>
All Tables : <select name="tb">
< %=getTableList(tblName)% >
</select>
<input type=hidden name="submitc" value="view">
<input type=submit name="submit" value="View Data">
<font color=red>(< %=strDbUser & "/" & strDbPwd & "@" & strDbConn% >)</font>
</td></tr>
</table>
</form>
<table border=1 cellspacing=0>
< %
if tblname<>"" then
strSql = "Select * from " & tblname
Set Rs = objOraDb.DbCreateDynaset(strSql,0)
Response.Write "<tr>"
for i=0 to rs.Fields.count-1
Response.Write "<td>" & rs.fields(i).name & "</td>"
next
Response.Write "</tr>"
While Not Rs.Eof
Response.Write "<tr>"
for i=0 to rs.fields.count -1
Response.Write "<td>" & Rs.Fields(i).Value & "</td>"
next
Response.Write "</tr>"
Rs.MoveNext
Wend
Set Rs = Nothing
end if
% >
</table>

细节可查询
http://www.jojoo.net/article/list.asp?id=4101
http://www.cx66.com/cxgzs/program/asp/581.htm
http://www.51one.net/info/1797.htm
http://www.kupage.com/webdesign/7/20031017/1641380000027pjtnjgy.htm

原文转自:http://www.ltesting.net