パラメータで使用している日付形式を実際に指定する必要があります。
SELECT *
FROM TB_MNP_GTY_TRANS_STEPS
where CREATE_DATETIME >= TO_DATE(&startdate, 'DD/MM/YYYY');
ここで日付形式について読む
現在、セッションでは、日付がデフォルトのNLS_DATEのデフォルトの形式であることが期待されており、入力する日付の形式が明らかに異なります。日付形式を明示的に指定すると、この問題は発生しなくなります。
それが役に立てば幸い...
編集:
2012年1月8日に渡す場合は、変数値を次のように指定できます。
08/01/2012
そして、あなたの選択は次のようになります:
SELECT *
FROM TB_MNP_GTY_TRANS_STEPS
where CREATE_DATETIME >= TO_DATE(&startdate, 'DD/MM/YYYY');
環境によっては、変数を一重引用符で囲む必要がある場合があります(TOADの場合は間違いなくそうします)。
SELECT *
FROM TB_MNP_GTY_TRANS_STEPS
where CREATE_DATETIME >= TO_DATE('&startdate', 'DD/MM/YYYY');
表示されるエラーは、入力している日付文字列の形式が、指定している形式と完全に一致していないことが原因です(日と月の前と0
前の先頭の ""を参照してください!)8
1