oracle中如何在日期字段中插入文本

Posted

技术标签:

【中文标题】oracle中如何在日期字段中插入文本【英文标题】:how to insert text to date field in oracle 【发布时间】:2011-08-22 13:32:17 【问题描述】:

如何插入(文本)时间:09:44:02 和日期:11/09/2007 到 Oracle 中归档的日期?

我在 oracle 中有字段 Tdate(日期)和 Ttime(日期)

提前致谢

【问题讨论】:

【参考方案1】:

由于日期是一个时间点,您实际上应该只使用一个字段:

insert into your_table (dt) 
   values (to_date ('11/09/2007 09:44:02', 'dd/mm/yyyy hh24:mi:ss'));

由于您的模型包含两列,您可以使用:

insert into your_table (Tdate, Ttime)
   values (to_date('11/09/2007', 'dd/mm/yyyy'),
           to_date ('09:44:02', 'hh24:mi:ss'));

但是请注意,默认情况下,您的 Ttime 列将包含可能是错误/不相关的日期信息,因为您不能只存储时间组件:

SQL> select to_char(tdate), to_char(ttime) from your_table;

TO_CHAR(TDATE)      TO_CHAR(TTIME)
------------------- -------------------
11/09/2007 00:00:00 01/08/2011 09:44:02

【讨论】:

【参考方案2】:
INSERT INTO <table>
(date_column)
VALUES
(TO_DATE(tdate||' '||ttime, 'DD/MM/YYYY HH24:MI:SS'))
/

如果是PL/SQL

DECLARE
   v_date_field DATE;
BEGIN
   v_date_field := TO_DATE(tdate||' '||ttime, 'DD/MM/YYYY HH24:MI:SS');
   --
   INSERT INTO <table>
   (date_column)
   VALUES
   (v_date_field);
END;
/

之后别忘了提交 :-)

【讨论】:

【参考方案3】:
insert into tablename(tdate) 
values(to_date('11/09/2007 09:44:02','dd/mm/yyyy hh24:mi:ss'))

【讨论】:

以上是关于oracle中如何在日期字段中插入文本的主要内容,如果未能解决你的问题,请参考以下文章

如何在oracle中以dd / mm / yyyy格式将当前日期插入DATE字段

如何在oracle表中插入系统时间

oracle中如何修改日期类型的字段值

oracle中如何设置年月日?

jQuery:如何从与 datepicker 插入日期的输入字段不同的元素中激活 datepicker?

如何在Oracle表中插入系统时间