pl/sql 如何将 clob 数据转换为日期时间格式

How to convert clob data into date time format in pl/sql

我写了一段代码,我从数据库中提取 oracle table 数据到 excel sheet 并将其作为邮件附件发送。问题是 table 的日期列显示为 DD-Mon-YY 格式,因为我将数据存储到 clob 中。我的要求是显示带有时间戳的日期。

知道如何实现吗?

因此,如果我理解正确的话,您将 DATE 值存储在 CLOB 类型变量中。当它显示在 Excel sheet 中时,您将看不到 TIME 部分。问题可能是 -

  1. 您没有将完整的 DATE TIME 值提取到 CLOB 字段中。
  2. 格式模型在 Excel 文件中被覆盖。

to_char 加上适当的格式模型就足够了 -

SQL> DECLARE
  2    dt CLOB;
  3  BEGIN
  4    dt := to_char(SYSDATE, 'dd-mon-yyyy hh24:mi:ss');
  5    dbms_output.put_line(dt);
  6  END;
  7  /
19-jan-2015 12:29:44

PL/SQL procedure successfully completed.

SQL>

上面,"dt"是一个CLOB类型,我把DATE值存储成下面的格式'dd-mon-yyyy hh24:mi:ss'.