<%@Language="VBSCRIPT" CodePage="936" LCID="2052"%> <%OptionExplicit%> <% '********************************************** ' Coding By sjcatsoft | ' Please Keep the message,Thx | '********************************************** %> <!-- #include file="../adovbs.inc"--> <% Dim cnOra Function Connect2OracleServer Dim conStr conStr ="Provider=MSDAORA.Oracle;Data Source=xx;user id=sr;password=bjlt" Set cnOra = Server.CreateObject("ADODB.Connection") cnOra.CursorLocation = adUseClient '=3 OnErrorResumeNext cnOra.Open conStr Connect2OracleServer = (Err.Number =0) End Function Sub DisconnectFromOracleServer IfNot cnOra isNothingThen If cnOra.State =1Then cnOra.Close EndIf Set cnOra =Nothing EndIf End Sub Sub Echo(str) Response.Write(str) End Sub Sub OutputResult Dim cmdOra Dim rs Set cmdOra = Server.CreateObject("ADODB.Command") With cmdOra .CommandType = adCmdText '=1 .CommandText ="{call PKG_TEST.GetItem(?,?)}" .Parameters.Append cmdOra.CreateParameter("p1", adNumeric, adParamInput, 10, 1) .Parameters.Append cmdOra.CreateParameter("p2", adVarChar, adParamInput, 10, "xx") .ActiveConnection = cnOra Set rs = cmdOra.Execute IfNot rs.Eof Then WhileNot rs.Eof Echo rs(0) Echo "--" Echo rs(1) Echo "<br>" rs.MoveNext Wend rs.Close EndIf Set rs =Nothing Set cmdOra =Nothing EndWith DisconnectFromOracleServer End Sub If Connect2OracleServer Then OutputResult Else Response.Write(Err.Description) EndIf %> <% '--------------------------------------SQL Script---------------------------------- '建包 '----------------------------------- ' Create Or Replace Package PKG_TEST ' IS ' TYPE rfcTest IS REF CURSOR ; ' ' PROCEDURE GETITEM ' ( p1 IN NUMBER, ' p2 IN VARCHAR2, ' p3 OUT rfcTest ' ); ' ' ' END; -- Package Specification PKG_TEST '============================================= '建包体 '----------------------------------- ' Create Or Replace Package Body PKG_TEST ' IS ' ' PROCEDURE GETITEM ' ( p1 IN NUMBER, ' p2 IN VARCHAR2, ' p3 OUT rfcTest ' ) ' IS ' BEGIN ' OPEN p3 FOR ' SELECT * FROM tablename WHERE id = p1 AND name=p2 AND rownum < 10 ; ' EXCEPTION ' WHEN OTHERS THEN ' NULL ; ' END; ' ' END; -- Package Body PKG_TEST %>