首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 关于数据库中DATE类型的不理解
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • adsj3sak3ks
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 揭贴率:
    发表于:2008-08-20 15:30:49 楼主
    我的操作系统是韩文的,ORACLE也是韩文的,我的SQL工具是中文的。插入时间的时候,我是用SQL工具插入。发现插入的时间格式是这样的"20-8月 -08",看见SQL语句是这样插入进去的。。。 TO_DATE('20-8月 -08', 'DD-MON-RR')。

    当然插入会报错误
    One error saving changes to table "RMMSIDEV"."PRO_T_I04":
    Row 1: ORA-01843: not a valid month
    ORA-06512: at line 1


    那么我需要怎么做啊,顺便讲一下数据库ORACLE的一些知识,,,
    100  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • mantisXF
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 2

    发表于:2008-08-20 15:37:401楼 得分:0
    SQL code
    ALTER SESSION SET NLS_DATE_FORMAT = '韩文格式'; -- 'DD-MON-YYYY' SELECT TO_DATE(SYSDATE,'韩文格式','NLS_DATE_LANGUAGE = 韩文') FROM DUAL;

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • dutguoyi
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 15:38:422楼 得分:0
    使用工具导入时间会出现格式的问题。自己使用to_date来查一下具体使用方法。

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • oracledbalgtu
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 15:44:433楼 得分:0
    SQL code
    提供个任何平台/语言都可以用的方法: to_date('2008-01-02','yyyy-mm-dd') 只要你的数据通过上面变成日期型了,都可以根据不同的NLS_DATE_FORMAT参数的设置,自动改变显示的。

    引用楼主 adsj3sak3ks 的帖子:
    我的操作系统是韩文的,ORACLE也是韩文的,我的SQL工具是中文的。插入时间的时候,我是用SQL工具插入。发现插入的时间格式是这样的"20-8月 -08",看见SQL语句是这样插入进去的。。。 TO_DATE('20-8月 -08', 'DD-MON-RR')。

    当然插入会报错误
    One error saving changes to table "RMMSIDEV"."PRO_T_I04":
    Row 1: ORA-01843: not a valid month
    ORA-06512: at line 1


    那么我需要怎么做啊,顺便讲一下数据库ORACLE的…
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hebo2005
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 3

      2

    发表于:2008-08-20 20:19:484楼 得分:0
    引用 3 楼 oracledbalgtu 的回复:
    SQL code
    提供个任何平台/语言都可以用的方法:
    to_date('2008-01-02','yyyy-mm-dd')

    只要你的数据通过上面变成日期型了,都可以根据不同的NLS_DATE_FORMAT参数的设置,自动改变显示的。


    引用楼主 adsj3sak3ks 的帖子:
    我的操作系统是韩文的,ORACLE也是韩文的,我的SQL工具是中文的。插入时间的时候,我是用SQL工具插入。发现插入的时间格式是这样的"20-8月 -08",看见SQL语句是这样插入进去的。。。 TO_DATE(…

    同意,我从来不用TO_DATE('20-8月 -08', 'DD-MON-RR')。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • cosio
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 22:11:485楼 得分:0
    都可以根据不同的NLS_DATE_FORMAT参数的设置,自动改变显示的

    我也同楼上一下
    都是用如:to_date('2008-08-08','yyyy-mm-dd')
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • dbcxbj
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 00:12:526楼 得分:0
    同意3楼.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ruihuahan
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 3

    发表于:2008-08-21 11:45:397楼 得分:0

    select sysdate from dual
    看一下月份是怎么写的。
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved