请看代码,帮我纠正错误!
在oracle中:
一、包头说明
CREATE OR REPLACE PACKAGE pkg_test
AS
TYPE myrctype IS REF CURSOR;
PROCEDURE get2 (p_rc OUT myrctype);
END pkg_test;
二、包体部分
CREATE OR REPLACE PACKAGE BODY pkg_test
AS
PROCEDURE get2(p_rc OUT pkg_test.myrctype)
IS
sqlstr VARCHAR2 (500);
BEGIN
sqlstr:='select v_cbxmdm from cbgl_cbxmb';
OPEN p_rc FOR sqlstr;
END get2;
end pkg_test;
三、在ASP脚本中调用
set cm1 = Server.CreateObject("ADODB.Command")
set rs = Server.CreateObject("adodb.recordset")
cm1.ActiveConnection = "Provider=OraOLEDB.Oracle.1;Persist Security Info=True;User ID=pacm;Password=pacm2004;Data Source=pacm"
cm1.CommandType = 1
cm1.CommandTimeout = 100
cm1.Prepared = true
cm1.CommandText = "{call pkg_test.get2(?)}"
set rs.Source = cm1
on error resume next
set rs=cm1.Execute
rs.Open()
response.Write rs("v_cbxmdm")
出现的问题....
问题为:
(1)不要“response.Write rs("v_cbxmdm")”这行时,运行不提示错误;
(2)加上“response.Write rs("v_cbxmdm")”时所出现的错误为“在对应所需名称或序数的集合中,未找到项目”
请帮我指点一下,我以前是用SQL SERVER数据库,没用过ORACLE数据库,此问题一直让我头疼,目前正急需。谢谢!!!
注意:'select v_cbxmdm from cbgl_cbxmb'决对能查询到数据---这没问题