これは、Oracle 11g (バージョン 11.2) を使用した最初の WPF であるため、単純なものであることを願っています。応用。
WPF アプリケーション コードから Oracle ストアド プロシージャを呼び出して、出力 (int および string) パラメーターを取得することはできますが、日付値を取得しようとすると、01/01/0001 00:00:00
実際には日付が返されていないことを示す次の値が返されます。 ?
ストアド プロシージャは Oracle で正常に動作します。つまり、日付を返します。
これが私のコードです:
string sql = "pkge_intautotest.ScheduleNextRun";
OracleCommand cmd = new OracleCommand(sql, conn);
cmd.BindByName = true;
cmd.CommandType = System.Data.CommandType.StoredProcedure;
DateTime outSchedDateTime;
cmd.Parameters.Add("outSchedDateTime", OracleDbType.Date, ParameterDirection.Output);
cmd.ExecuteNonQuery();
//Get the values output by the stored procedure
outSchedDateTime = (DateTime)cmd.Parameters["outSchedDateTime"].Value;
conn.Close();
conn.Dispose();
そして、これが私の(単純化された)ストアドプロシージャです:
PROCEDURE ScheduleNextRun (inIntno NUMBER, outCaseno OUT NUMBER, outSchedDateTime OUT DATE ) AS
BEGIN
DECLARE
sched_datetime DATE;
init_diary_id DIARY.ID%TYPE;
v_proceed PLS_INTEGER;
BEGIN
-- Get the schedule time for 4 minutes from now
SELECT TO_DATE(SYSDATE + 4/(24*60)) INTO sched_datetime FROM dual;
outSchedDateTime := sched_datetime;
END;
END ScheduleNextRun;
私はこれを見続けますが、私が間違っていることについて何か考えはありますか?