在Oracle中将字符串日期转换为datetime

时间:2011-10-27 18:35:09

标签: sql oracle ora-01861

如何在oracle中将此字符串日期转换为日期时间。

2011-07-28T23:54:14Z

使用此代码会引发错误:

TO_DATE('2011-07-28T23:54:14Z',  'YYYY-MM-DD HH24:MI:SS')

如何做到这一点?

Error report:
SQL Error: ORA-01861: literal does not match format string
01861. 00000 -  "literal does not match format string"
*Cause:    Literals in the input must be the same length as literals in
           the format string (with the exception of leading whitespace).  If the
           "FX" modifier has been toggled on, the literal must match exactly,
           with no extra whitespace.
*Action:   Correct the format string to match the literal.

更新: -

TO_DATE('2011-07-28T23:54:14Z','YYYY-MM-DD」T“HH24:MI:SS”Z“')

我只在列中看到日期而不是时间

28-JUL-11

3 个答案:

答案 0 :(得分:43)

试试这个: TO_DATE('2011-07-28T23:54:14Z', 'YYYY-MM-DD"T"HH24:MI:SS"Z"')

答案 1 :(得分:0)

嘿我有同样的问题。我试图转换“2017-02-20 12:15:32&#39; varchar到public class MovableDictionary<K, V> // : IDictionary<K, V>, IReadOnlyDictionary<K, V>... { private Dictionary<K, V> _map; // Implement all Dictionary<T>'s methods by calling Map's ones. public Dictionary<K, V> Move() { var result = Map; _map = null; return result; } private Dictionary<K, V> Map { get { if (_map == null) _map = new Dictionary<K, V>(); return _map; } } } 的日期,我收到的所有内容都是2017-02-20,时间消失了

我的解决方案是使用TO_DATE('2017-02-20 12:15:32','YYYY-MM-DD HH24:MI:SS')现在时间不会消失。

答案 2 :(得分:0)

您可以使用强制转换来查看日期结果

&#13;
&#13;
 select to_char(to_date('17-MAR-17 06.04.54','dd-MON-yy hh24:mi:ss'), 'mm/dd/yyyy hh24:mi:ss') from dual;
&#13;
&#13;
&#13;