我想问下,在oracle中,其函数是有返回值的,那这个返回值是去什么地方了?比如说,一个java程序调用oracle的一个函数,其返回值是不是去java程序调用方那边了?
存储过程是通过参数来返回数据的,那如果java调用一个存储过程,其返回数据是不是返回到java程序调用方那边了?
------解决方案--------------------
代码迷推荐解决方案:oracle存储过程,http://www.daimami.com/search?q=177537
------解决方案--------------------
要用一个传出型参数,接收oracle返回的值.
Java不懂,没办法用例子
------解决方案--------------------
- C# code
更正下DataSet dsReturn = new DataSet();//调用存储过程string cmdText = "procedureTest";DbCommand cmd = db.GetStoredProcCommand(cmdText);#region 设置参数//设置输入参数db.AddInParameter(cmd, "p_paraA", DbType.AnsiString, 'test');//设置输出参数db.AddOutParameter(cmd, "p_paraB", DbType.AnsiString, 200);#endregion //设置参数//执行存储过程db.ExecuteNonQuery(cmd);#region 取输出参数值//取 p_paraBstring paraB= Convert.ToString(db.GetParameterValue(cmd, "p_paraB"));
------解决方案--------------------
那是自然了,谁调用,值返回给谁罢。
如果是程序语言调用存储函数,返回值就返回给编程语言。
如果是其它的函数或存储过程调用该存储函数,返回值就返回给其它的函数或存储过程。
一句话:看调用这个函数的宿主就谁。