.netmvcプロジェクトで古いOracleDLLを使用すると、次のように機能します。
cmd.CommandText = "dba.user_login";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("KUL", OracleType.VarChar).Value = userName;
cmd.Parameters.Add("SIFRE", OracleType.VarChar).Value = pass;
cmd.Parameters.Add("FLAG", OracleType.Float).Value = 1;
cmd.Parameters.Add("HATA", OracleType.VarChar).Value = "error";
cmd.Parameters.Add("result", OracleType.Float).Direction = ParameterDirection.ReturnValue;
しかし、古いoracle dllが非推奨になったため、新しいoracle.netプロバイダーを使用したいと思います。私はこれを試しました:
cmd.CommandText = "dba.user_login";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("KUL", OracleDbType.Varchar2).Value = userName;
cmd.Parameters.Add("SIFRE", OracleDbType.Varchar2).Value = pass;
cmd.Parameters.Add("FLAG", OracleDbType.Single).Value = 1;
cmd.Parameters.Add("HATA", OracleDbType.Varchar2).Value = "error";
cmd.Parameters.Add("result", OracleDbType.Single).Direction = ParameterDirection.ReturnValue;
しかし、それは機能しません。例外:ORA-06502:PL / SQL:数値または値のエラー:文字から数値への変換エラー\ nORA-06512:1行目誰かがこれを修正するのを手伝ってもらえますか。ありがとうございました。