用VB6和ADO怎么调用oracle的函数(function),而不是调用存储过程(procedure)
用VB6和ADO怎么调用oracle的函数(function),而不是调用存储过程(procedure)
代码如下:
Dim con As ADODB.Connection
Dim com As ADODB.Command
Dim para_in As ADODB.Parameter
Dim para_out As ADODB.Parameter
Dim constr As String
Set con = New ADODB.Connection
constr = "....."
con.Open constr
Set com = New ADODB.Command
com.ActiveConnection = con
com.CommandText = "...." //???,这里是写存储过程名还是函数名?
com.CommandType = adCmdStoredProc //??? ,这里不知道写什么好
com.Prepared = true
Set parm_in = New ADODB.Parameter
parm_in.Name = "in"
parm_in.Type = adVarChar
parm_in.Size = 15
parm_in.Direction = adParamInput
parm_date.Value = "....."
com.Parameters.Append parm_in
Set parm_out = New ADODB.Parameter
parm_out.Name = "out"
parm_out.Type = adDecimal
parm_v1.Direction = adParamOutput
com.Parameters.Append parm_out
com.Execute()
开始执行后就报错了
vb 实时错误 '-2147217900 (80040e14)';
oracle错误代码为:
ora-06550:
pls-00221:'....' is not a procedureor is undefined
ora-06550:
pl/sql: statement ignored
注释:
该函数肯定是存在与oracle内的,肯定不是存储过程,而且我是以
系统admin角色登录数据库的,不存在函数或者存储过程的授权
问题
所以,请专家高手指点用ADO怎么调用oracle的函数(function),
不是调用存储过程(procedure)
能用其他办法解决这个问题也可以,但还是必须调用这个函数
万分感谢