﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-我的小船停在代码的海洋中...-随笔分类-个人日志</title><link>http://www.blogjava.net/machilansing/category/13690.html</link><description>Lansing--Coding 不是梦
</description><language>zh-cn</language><lastBuildDate>Fri, 02 Mar 2007 06:35:56 GMT</lastBuildDate><pubDate>Fri, 02 Mar 2007 06:35:56 GMT</pubDate><ttl>60</ttl><item><title>Oracle 10g TO_DATE() ora-01830 领悟共勉</title><link>http://www.blogjava.net/machilansing/archive/2006/08/10/62857.html</link><dc:creator>Lansing</dc:creator><author>Lansing</author><pubDate>Thu, 10 Aug 2006 13:03:00 GMT</pubDate><guid>http://www.blogjava.net/machilansing/archive/2006/08/10/62857.html</guid><wfw:comment>http://www.blogjava.net/machilansing/comments/62857.html</wfw:comment><comments>http://www.blogjava.net/machilansing/archive/2006/08/10/62857.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/machilansing/comments/commentRss/62857.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/machilansing/services/trackbacks/62857.html</trackback:ping><description><![CDATA[
		<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">今天在 DRM中报错ora-01830 </font>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">把sql语句输出作了以下的实验，发现是时间多了一个.0</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">后来的办法是先把这个时间转成to_char，再转成to_date</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">SQL&gt; select to_date('2005-10-01 12:01:01.0','yyyy-mm-dd hh24:mi:ss') from dual;</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">select to_date('2005-10-01 12:01:01.0','yyyy-mm-dd hh24:mi:ss') from dual</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">ORA-01830: 日期格式图片在转换整个输入字符串之前结束</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">SQL&gt; select to_date('2005-10-01 12:01:01.0','yyyy-mm-dd hh24:mi:sssss') from dual;</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">select to_date('2005-10-01 12:01:01.0','yyyy-mm-dd hh24:mi:sssss') from dual</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">ORA-01836: 小时与日中的秒发生冲突</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">SQL&gt; select to_date('2005-10-01 12:01:01.0','yyyy-mm-dd hh24:mi:ss.sssss') from dual;</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">select to_date('2005-10-01 12:01:01.0','yyyy-mm-dd hh24:mi:ss.sssss') from dual</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">ORA-01836: 小时与日中的秒发生冲突</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">SQL&gt; select to_date('2005-10-01 12:01:01.0','yyyy-mm-dd hh24:mi:ff') from dual;</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">select to_date('2005-10-01 12:01:01.0','yyyy-mm-dd hh24:mi:ff') from dual</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">ORA-01821: 日期格式无法识别</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">------------------------------------------------------------------</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">必须保证传入的字符串和要转换的格式精确匹配</font>
		</p>
		<p>
				<font style="BACKGROUND-COLOR: #d3d3d3" face="Courier" color="#0000ff">SQL&gt; SELECT TO_DATE('11-10-1996-13:51:21','DD/MM/YYYY-HH24') A FROM dual; <br /><br />ERROR: <br />ORA-01830: date format picture ends before converting entire input string.</font>
		</p>
		<p>
				<font face="Courier">
						<font style="BACKGROUND-COLOR: #d3d3d3" color="#0000ff">SQL&gt; SELECT TO_DATE('11-10-1996-13:51:21','DD/MM/YYYY-HH24:MI:SS') B FROM dual; <br />－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－<br /></font>以上是转载的<br />后来我是这么做的哈：<br /><br />SELECT中将其他表的日期TO_CHAR下，然后再将值在INSERT时TO_DATE!<br />具体的做法如下：<br /><br />SELECT TO_CHAR(parameter,'YYYY-MM-DD HH24:MI:SS') AS TIME<br />FROM TABLE_NAME_1;<br /><br />...<br />...<br /><br />INSERT INTO TABLE_NAME_2<br />(COLUME_NAME_1)<br />VALUE (TO_DATE('"+TIME+"','YYYY-MM-DD HH24:MI:SS'));<br /><br />然后就OK了，呵呵，看来要学的还真多！</font>
		</p>
<img src ="http://www.blogjava.net/machilansing/aggbug/62857.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/machilansing/" target="_blank">Lansing</a> 2006-08-10 21:03 <a href="http://www.blogjava.net/machilansing/archive/2006/08/10/62857.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>