tinger (影虎):
你的问题老是好奇怪的。
返回记录集还要返回字符串,是不是rec = cmd.execute错,还是别的地方错,
我没有测试条件,但是你的语句中有一个错误
'out
cmd.parameters.append cmd.createparameter("p_depart_name",adVarchar,adParamOutput,10)
就是out类型的参数也要指定长度,如果还有问题,等明天我测试再说
你的问题老是好奇怪的。
返回记录集还要返回字符串,是不是rec = cmd.execute错,还是别的地方错,
我没有测试条件,但是你的语句中有一个错误
'out
cmd.parameters.append cmd.createparameter("p_depart_name",adVarchar,adParamOutput,10)
就是out类型的参数也要指定长度,如果还有问题,等明天我测试再说
解决方案 »
- 请问如何从其中一张表里只返回一个特定的记录?
- 怎么通过Oracle的DBLink同步Informix中的数据
- 我从别的机子复制了一TT.DMP文件,导入ORACLE时,总是说找不到文件
- PL/SQL和Java开发Oracle8i应用程序
- 新手提问:最简单的存储过程问题!
- pl/sql 连接不上数据库的问题。非常奇怪!
- DBF文件的转移
- 【求助】关于"Internal Password"……(版本805,Oracle Database Assistant的使用)
- java 连接oracle 数据库问题
- 各位大神,求助啊~~~~~~
- 数据库备份文件怎么恢复呢?
- 问一个FOXPRO的问题,在往表中写入数据时,怎样才能使写入的数据左对齐、右对齐、居中?
cmd.parameters.append cmd.createparameter("p_depart_id",adVarchar,adParamOutput,10,1)
第一个参数就是返回参数。
cmd.commandtext = "{?=call tinger01.selectbudgettitle(?,?, {resultset 100,a})}"
像这样的字符串到底是什么意思?
有没有什么格式参考一下!影虎兄,借地一用,不要生气哦!
我在CSDN里给你发了短信!
这是我的代码,测试通过
<%
dim cn,cmd,cmdrc,driver_name,para,result
driver_name= "Provider=MSDAORA.1;Password=pass;User ID=user;Data Source=server;Persist Security Info=True"
set cn = server.CreateObject("adodb.connection")
cn.open driver_name
set cmd=server.CreateObject("adodb.command")
set cmdrc=server.CreateObject("adodb.recordset")
cmd.CommandType = 1
set para = cmd.Parameters
'这里加一个?参数
cmd.CommandText = "{call tinger01.selectbudgettitle(?,?,{resultset 0, myrc})} "
para.Append cmd.CreateParameter("p_depart_id",3,1,4,1)
'是我加的返回参数,类型是integer
para.Append cmd.CreateParameter("p_name",3,2,4)
cmdrc.CursorType = 3
cmdrc.LockType = 3
'设置连接
set cmd.ActiveConnection = cn
set cmdrc.Source = cmd
cmdrc.Open
result= cmd("p_name")
'测试是否成功,我这里返回ok,我的result返回1,也正确
if cmdrc.EOF then
response.Write "false"
response.write result
else
response.Write "ok"
response.write result
end if
%>
简单过程command就可以解决
如
set cm = Server.CreateObject("ADODB.Command")
Set cm.ActiveConnection = cn
cm.CommandText = "sp_name"
cm.CommandType = 4
set para = cm.Parameters
'in
para.Append cm.CreateParameter("table_name",202,1,30,"t_info_pub_news")
para.Append cm.CreateParameter("field_id",202,1,30,"newsid")
para.Append cm.CreateParameter("field_name",202,1,30,"content")
para.Append cm.CreateParameter("v_pos",3,1,4,0)
para.Append cm.CreateParameter("v_id",3,1,4,id)
para.Append cm.CreateParameter("v_clob",202,1,32766,objUpload.request("content"))
'out
para.Append cm.CreateParameter("Result",3,2,4)
cm.execute
if cm("Result")<>1 then
response.write "远程过程调用失败"
response.end
end if