FUNCTIONをOracleに作成。
C#からFUNCTIONを呼び出し戻り値を取得しようとするがうまくいかない。
試行錯誤の末、以下のようにした。
using(OracleCommand cmd = new OracleCommand("FUNCTION_NAME"))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("value", OracleDecimal, ParameterDirection.ReturnValue);
cmd.ExecuteNonQuery();
~cmd.Parameters["value"].Valueをキャストして値取得。~
}
Parametersの一番最初に指定していないと値が取得できない。
他に引数を追加していたりすると取得できなくて混乱するようだ。
なんというか、こんなのどうやって調べればわかるんだか。
忘れないうちに記載してみた。