func callpro(id string){
var res interface{}
qry := `BEGIN SP_DEAL_GETLINESBYITEMID(:id,:order_id); END;`
if _, err := Db.Exec(qry,id,sql.Out{Dest:&res});err!=nil{
Log.Debug("exec err is %s",err)
}
rest := res.(driver.Rows)
value := make([]driver.Value,len(rest.Columns()))
for {
if err := rest.Next(value);err != nil{
if err == io.EOF{
Log.Debug("err is %v",err)
break
}
Log.Debug("value is %v",value)
}
}
}
报错:2018/09/26 16:50:57.783 [D] [default.go:66] exec err is dpiStmt_execute(mode=32 arrLen=-1): ORA-06550: 第 1 行, 第 7 列:
PLS-00306: 调用 'SP_DEAL_GETLINESBYITEMID' 时参数个数或类型错误
ORA-06550: 第 1 行, 第 7 列:
PL/SQL: Statement ignored
请问出参是cursor类型 该如何调用存储过程呢 用的也是"gopkg.in/goracle.v2"这个包