2016-12-21 5 views
-1

...のSQL ORACLE(DATE)

日付フォーマットでは、2016年1月12日である(DD-MM-YYYY)が、それは常に無効といない有効な月

:月

私のデータベースの日付書式が05-DEC-16である(DD-MONTH-YYYY)

これは

insert into institution_exam(ACADEMIC_INSTITUITION_ID,place,start_date,end_date) values (i_e_id,V_place,(i_e_id,V_place,TO_DATE(V_date_start,'DD-MONTH-yyyy'),TO_DATE(V_date_end,'DD-MONTH-yyyy'));-----select max 

がエラー ORA-01843私の関数であります

+0

あなたは私が提案したデータフォーマットが含まれ、このリンクを見つけたSTARTDATEと終了日のための私のデータ型が日付 – Panda

+0

具体的なデータベース構造を投稿することができます - http://ss64.com/ora/syntax-datatypes.html –

+0

ある – Panda

答えて

0

あなたは適切な形式、DD-MM-YYYYとto_date()を使用することができます。これは役立つかもしれ

insert into institution_exam(ACADEMIC_INSTITUITION_ID, place, start_date, end_date) 
    values (i_e_id, V_place, 
      TO_DATE(V_date_start, 'DD-MM-YYYY'), 
      TO_DATE(V_date_end, 'DD-MM-YYYY') 
      ); 
+0

ORA-01843:有効な月はまだありません..... –

+0

01-12-2016(DD-MM-YYYY)私は挿入のために私のインタフェースから渡した –

+0

これは変です。 2つの日付変数のデータ型は何ですか? –

0

。日付形式モデルのMONTHMONの違いに注目してください。あなたのデータが短い名前を使用しているようですが、クエリでMONの代わりにMONTHを使用しています。余談として

、余分なスペースは、長い形式でDECEMBER後にそこにあるか...それは、Oracle、すべての月名(週名と同じ)で、「機能」ですが、完全な形で綴らたときに気づきます、それらはすべて同じ長さであり、余白が埋め込まれています。しかし、それはおそらくあなたの状況に無関係です。

select to_char(sysdate, 'DD-MONTH-YYYY') as long_month_name, 
     to_char(sysdate, 'DD-MON-YYYY') as short_month_name 
from dual; 

LONG_MONTH_NAME SHORT_MONTH_NAME 
----------------- ---------------- 
20-DECEMBER -2016 20-DEC-2016