请教:关于oracle中的日期型数据,好象在输出的时候它会自动加一个时间也就是时、分、秒在后面,怎么回事?? 我用的是oracle8.17,前台用的是PB,为什么我在数据库中写的日期型数据如2005-2-18,用PB程序直接读数据库出来就变成了2005-2-18 00:00:00,后面多出了时间,我只想在数据库中存日期,程序里也只处理日期,为什么会出现这种情况?是oracle自动给日期型数据加的吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 2005-2-18 00:00:00 是的Date类型,只要日期的话,trunc(2005-2-18 00:00:00,'dd') SQL> select trunc(sysdate,'dd') from dual;TRUNC(SYSDATE,'DD')-------------------2007-2-1SQL> 谢谢,处理一下是可以了,能不能不处理直接在oracle中存日期型的数据如2005-2-18这样的?我不想在我的程序中还去处理日期时间型的数据转换问题。我用的是PB中的一个控件数据窗口,它直接就把oracle中的数据读出来了,我明明在oracle中设置的是date型,可是PB读出来就变成了datetime型了,是不是因为PB中有date和datetime型之分,而oracle中只有一个date类型? select to_char(yourdate,'yyyy-mm-dd') from dual; 不处理直接在oracle中存日期型的数据如2005-2-18:用to_date(aaa,'yyyy-mm-dd'),掩码'yyyy-mm-dd'格式可任意修改。 select to_char(sysdate,'yyyy-mm-dd') from dual; 数据库里面修改NLS_DATE_FORMAT可以调整日期显示的格式.NLS_DATE_FORMAT默认的格式里面带有时间部分.Oracle也是有date,timestamp两种类型的。不是楼主认为的一种data类型。但是楼主的都是00:00:00,这个倒是让我有点奇怪。没有用过PB,我反而是认为是不是LZ在PB的什么地方用错了?假如肯定了不是PB那里的问题的话,可以看看下面的做法。1.不知道PB可不可以设置一些Oracle环境变量,可以的话,可以设置NLS_DATE_FORMAT。2.不可以的话,加入你的所有数据库联接都是共通的话,可以执行alter session set NLS_DATE_FORMAT='yyyy/mm/dd'这样来修改你当前的连接也可以.当然,直接修改数据库的也可以做到,你可以改的话。 更正一下上面的说法,"NLS_DATE_FORMAT默认的格式里面带有时间部分",这个由各个语种决定.并不是一定有时间部分的. select * from sys.v_$NLS_parameters看一下这个系统视图,可以知道是什么的。相关视图还有,sys.NLS_database_parameterssys.NLS_instance_parameterssys.NLS_session_parameters 日志业务考虑用触发器 一条sql语句 求解密 问一个关于触发器的问题 ORACLE NOT CLIENT *********怎么把十进制转换为二进制呢?********* 只选一条(比如第一条)的sql语句是什么? 给大家的新年礼物,散分!! ORACLE数据库中两个表之间的数据加载问题! 分不在多,心成则灵!请问何种权限的用户才能够从登陆 oracle dba studio登陆? help! oracle安装时的jdk问题 两表关联查询问题,sql应该怎么写 oracle sql查询问题
只要日期的话,trunc(2005-2-18 00:00:00,'dd')
-------------------
2007-2-1SQL>
用to_date(aaa,'yyyy-mm-dd'),掩码'yyyy-mm-dd'格式可任意修改。
Oracle也是有date,timestamp两种类型的。不是楼主认为的一种data类型。
但是楼主的都是00:00:00,这个倒是让我有点奇怪。
没有用过PB,我反而是认为是不是LZ在PB的什么地方用错了?假如肯定了不是PB那里的问题的话,可以看看下面的做法。
1.不知道PB可不可以设置一些Oracle环境变量,可以的话,可以设置NLS_DATE_FORMAT。
2.不可以的话,加入你的所有数据库联接都是共通的话,可以执行alter session set NLS_DATE_FORMAT='yyyy/mm/dd'这样来修改你当前的连接也可以.当然,直接修改数据库的也可以做到,你可以改的话。
"NLS_DATE_FORMAT默认的格式里面带有时间部分",这个由各个语种决定.并不是一定有时间部分的.
看一下这个系统视图,可以知道是什么的。相关视图还有,
sys.NLS_database_parameters
sys.NLS_instance_parameters
sys.NLS_session_parameters