如何解决从C#调用oracle函数时输入字符串的格式不正确
调用Oracle函数时出现此错误
输入字符串的格式不正确。
这是功能
create or replace function abs.test_func(test_in in integer)
return integer
is
test_out integer ;
BEGIN
test_out:=test_in;
RETURN test_out;
END;
这是C#代码
using (var cmd = new OracleCommand("abs.test_func",conn1))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new OracleParameter("test_in",OracleDbType.Int64,test_in,ParameterDirection.Input));
OracleParameter test_out = new OracleParameter("test_out",OracleDbType.Int64);
test_out.Direction = ParameterDirection.ReturnValue;
cmd.Parameters.Add(test_out);
cmd.ExecuteNonQuery();
JsonResponse.Result = Int32.Parse(test_out.Value.ToString());
我不知道自己做错了什么,我专门出于测试目的编写了此函数。非常简单:1个变量输入1个变量输出作为函数返回。就这样。要使它正常工作,这里还可以做些什么?
解决方法
有帮助
cmd.Parameters.Add(new OracleParameter("test_out",OracleDbType.Int64,ParameterDirection.ReturnValue));
cmd.ExecuteNonQuery();
JsonResponse.Result = Int32.Parse(cmd.Parameters[0].Value.ToString());
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。