Oracle,invalid month问题

oracle\u6570\u636e\u5e93\u63d2\u5165\u51fa\u73b0\u65e0\u6548\u7684\u6708\u4efd

\u5b58\u7684\u65f6\u5019\u8f6c\u4e00\u4e0b\u4e0d\u5c31\u884c\u4e86

to_date( to_char(your_col,'yyyy-mm-dd hh24:mi:ss') , 'yyyy-mm-dd hh24:mi:ss' )

\u8fd4\u56de\u6bd4\u65e5\u671fd\u5927n\u4e2a\u6708\u7684\u65e5\u671f\uff0c\u53c2\u6570n\u53ef\u4ee5\u662f\u4efb\u610f\u6574\u6570\u3002\u5982\u679cd\u662f\u8be5\u6708\u4efd\u7684\u6700\u540e\u4e00\u5929\uff0c\u6216\u8005\u8fd4\u56de\u503c\u6708\u4efd\u7684\u5929\u6570\u6bd4\u65e5\u671fd\u7684\u5929\u6570\u5c11\uff0c\u5219\u8fd4\u56de\u503c\u662f\u5e94\u8fd4\u56de\u6708\u4efd\u7684\u6700\u540e\u4e00\u5929\uff1b\u5426\u5219\u8fd4\u56de\u503c\u4e0ed\u7684\u65e5\u671f\u4e2d\u7684\u5929\uff08day\uff09\u662f\u4e00\u81f4\u7684\u3002

oracle没有单独存放时分秒格式的字段类型
要么用字符串类型,不过在计算时间上可能还要和日期一同转成日期时间格式,会麻烦一些
要么你就都写到一起
比如

insert into table values (to_date('2013-01-20 14:30:00','yyyy-mm-dd hh24:mi:ss');


‘2:30pm’不是一个合法的时间,
to_date('02:30 下午','hh:mi am') 如果默认时间语言是中文
to_date('02:30 a.m.','hh:mi am')如果默认时间语言是美国英语
to_date('02:30 am','hh:mi am')如果默认时间语言是英国英语
select NLS_DATE_LANGUAGE from v$nls_parameters;查看

错误应该是在VISITTIME这个字段上了,解决方法是将字段类型改为VARCHAR2吧

2:30pm这不是oracle的时间格式,为什么不把两个时间字段合并到一个.
直接采用(’2013-12-20 15:30:00‘,‘yyyy-mm-dd hh24:mi:ss')

扩展阅读:01722 invalid number ... oracle vm virtualbox ... invalid numeric mysql ... oracle invalid username ... invalid character ... oracle invalid number ... oracle insert uuid ... ora01722 ... oracle正版官网 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网