"ORA-06502: PL/SQL: numeric or value error: character string buffer too small"是虫子?



在我的asp.net页面中返回"ORA-06502:PL/SQL:数字或值错误:字符串缓冲区太小"。

但蟾蜍做得很好。

这是我的oracle过程和asp.net代码。

CREATE OR REPLACE PROCEDURE FIS.test(res out varchar2)
 IS
BEGIN
   res := 't430intw2sBn0UQx8WWO0FlsYLcLOPaJ:1R3xHpLiQGw12xXintomQc3oXbiJtvmw';
END test;

-

public String Foo()
        {
            string queryString = "TEST";
            OracleParameter[] parameters = 
                { 
                    new OracleParameter("OUT_CURSOR", OracleDbType.Varchar2, ParameterDirection.Output)
                };
            return ExecuteScalar(CommandType.StoredProcedure, queryString, parameters);
        }

您需要在此处给出varchar(2)的大小:

new OracleParameter("OUT_CURSOR", OracleDbType.Varchar2, ParameterDirection.Output)

类似于:

new OracleParameter("OUT_CURSOR", OracleDbType.Varchar2,32767, ParameterDirection.Output)

相关内容

最新更新