我从java获取输入到oracle
custom_date_in IN Table1.custom_date%TYPE,
输入为2015-07-11,将存储在custom_date_in
中我希望将输入插入到列类型为日期类型
的表中我尝试使用以下sql但失败了,
INSERT INTO Table1(custom_date)SELECT TO_DATE(custom_date_in,' YYYY-MM-DD')FROM TABLE
以下是我收到的错误消息
ORA-01861:literal与格式字符串
不匹配
答案 0 :(得分:2)
custom_date_in IN T_MT_APP_DATE.custom_date%TYPE,
IN 参数已经是 DATE 数据类型,为什么要将日期转换为日期?您需要 TO_DATE 才能将日期文字转换为日期。
因此,只需将日期值分配给变量:
custom_date := custom_date_in;
此外,在分配值时,您缺少冒号。请注意,在 PL / SQL 中,您需要使用:=
代替=
。
或者,您可以将日期值作为字符串2015-07-11
传递,即 VARCHAR2 ,然后应用TO_DATE(custom_date_in,'YYYY-MM-DD')
或 ANSI 日期文字{ {1}}。