将时间戳插入 Oracle 数据库中的 Varchar2 列
Posted
技术标签:
【中文标题】将时间戳插入 Oracle 数据库中的 Varchar2 列【英文标题】:Insert Timestamp into Varchar2 column in Oracle Database 【发布时间】:2014-06-16 20:19:02 【问题描述】:我正在使用与 Oracle 11g 数据库接口的应用程序。我需要将 YYYYMMDDhhmmss 格式的时间戳插入 Varchar2 列中。
我的 SQL 更新查询是:
更新 CODELIST_XREF_ITEM 设置 RECEIVER_ITEM=TIMESTAMP 其中 LIST_NAME='BUSINESS_PROCESS';
TIMESTAMP 变量是需要插入的位置。我尝试将 TIMESTAMP 变量设置为 CURRENT_TIMESTAMP,但我无法对其进行格式化。
有什么建议吗?
提前感谢您的帮助!
【问题讨论】:
有一段时间没有使用 oracle,但尝试 'update CODELIST_XREF_ITEM set RECEIVER_ITEM=to_char(CURRENT_TIMESTAMP,'YYYYMMDD HH24MISSFF') where LIST_NAME='BUSINESS_PROCESS';' 【参考方案1】:如果您想插入时间戳的字符表示(实际上您似乎需要 Oracle date
的字符表示,因为您不需要小数秒或时区),您可以使用 @ 987654322@函数。
to_char( sysdate, 'YYYYMMDDHH24MISS' )
所以你的UPDATE
声明将是
update CODELIST_XREF_ITEM
set RECEIVER_ITEM=to_char( sysdate, 'YYYYMMDDHH24MISS' )
where LIST_NAME='BUSINESS_PROCESS';
如果您想要存储小数秒或时区或执行其他需要 timestamp
的操作,您可以使用相同的 to_char
函数,但格式掩码不同。
【讨论】:
非常感谢!你回答了我的问题。 确保将此答案标记为已批准,以便贾斯汀获得信任。谢谢。以上是关于将时间戳插入 Oracle 数据库中的 Varchar2 列的主要内容,如果未能解决你的问题,请参考以下文章
在oracle 10g sql plus中将日期和时间插入时间戳