繁体   English   中英

从Java插入日期到Oracle DB

[英]Inserting date from java to Oracle DB

我试图通过java将值插入Oracle DB中具有DATE数据类型的列之一。

尝试以下

insertSurveyQuery.append("cast(to_date('12/31/8888', 'MM/dd/yyyy' )as date), ");

Oracle DB中的OP:

DEC-31-88

但我希望将日期存储为12/31/8888。

感谢您的帮助!

-谢谢!

这就是您的SQL客户端显示日期的方式。 您可以使用以下方法更改此格式:

alter session set NLS_DATE_FORMAT='MM/dd/yyyy';

在内部(在DB中)DATE以数字形式存储,因此它没有任何格式。

如果您有许多用户在访问您的应用程序,则可以用Java代码执行以下操作

Date newDate = new SimpleDateFormat("mm/dd/yyyy").parse(myDate);

并在插入或更新语句中使用newDate

这样,您无需更改客户端设置。

首先,您必须以

create table t1
(
ename varchar(20),
address varchar(20),
hire_date date,
salary number(5),
dob (we enter as 'dd-mm-yyyy')
);

在其中您必须将日期列指定为dd-mm-yyyy类型,然后可以根据需要设置数据。

Oracle不支持DD / MM / YYYY格式。 如果要存储日期时间或时间戳,则必须使用DD-MM-YYYY格式。

在直接插入查询中:

  SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy' 'hh:mm:ss a");  
     String date = "01-01-1900 01:00:00 AM";

在过程中:

create or replace 
PROCEDURE insertDATE(
        DATE_PARAM IN VARCHAR2,
         )
IS
 BEGIN 

 INSERT INTO CUSTOMER("DATE")
  VALUES (TO_TIMESTAMP(DATE_PARAM,'DD-MM-YYYY HH:MI:SS AM'));
  COMMIT;
  END;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM