求救修改oracle的日期存储/显示格式为:YYYYMMDD 我的问题造成的原因是因为我们的程序从mysql转到oracle,所以不想去修改程序(量很大),而是想直接来修改oracle的默认存储格式来匹配我们的程序。请求帮助。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 基于那个表建一个视图,把其中DATE类型的字段如下处理:假设你要访问的表叫做 TALTER TABLE T RENAME TO T_kernel;create or replace view T asselect .....,to_char(theDate,'YYYYMMDD') as theDatefrom t_kernel/这样程序就不用变动了 不过这种方式会导致 theDate 字段上的普通索引无法使用,如果要用索引,就得建立 to_char(theDate,'YYYYMMDD') 的函数索引 谢谢 boydgmx(授人以鱼不如授人以渔(baidu&google)) 老师的回复,如果 按照您的方法来操作,是不是要把所有含有Date的表都要加上您讲的view。表的量比较大吧,有180个table呢。请教有没有方法,可以直接修改到oracle的日期默认存储格式?这样来匹配是否可以行? oracle日期在数据库存储的格式是固定的吧,你说你的oracle9i的存储日期格式为:dd-mon-yyyy,指的也是显示格式吧,修改注册表和配置文件修改的也只是显示格式而已,日期的内部存储格式应该是固定的,不能改变的。只要你定义的数据字段类型为date类型,你用to_date('20060531','yyyymmdd')和to_date('01-5月-2006','dd-mon-yyyy')插入日期数据都是一样的,也就是说你想像sqlserver一样直接将字符串插入date类型数据中是不行的 对于标准的日期的格式(YYYY-MM-DD)字符串,可以加date前缀转化成日期格式,如:date '2006-05-31' ,一般格式只能用to_date(),如果你的字段仅仅只是yyymmdd格式的,那用字符类型保存数据好了 谢谢duanzilin(寻) 答复:讲得比较有道理,我再考虑考虑。 oracle中的cat表和tab表相关问题 oracle10g数据库jobs的问题 oracle怎么快速实现这个? ORACLE exp的问题 基本问题 如何修改这条SQL语句可令执行速度加快? sql问题 帮帮忙了,公司给了一个几百张表的er图,不知道如何分析阿?(给点意见,分不够再给) 数据是WEBISO8859P1 ,现在要求倒入中文字符集数据库中,求救!! 那里有Oracle 9i下载? 请教,关于不同版本之间互导数据问题? WinNT下的Oracle数据库服务器,使用关闭Windows服务的方式关闭,在工业生产下是否安全。
select .....,to_char(theDate,'YYYYMMDD') as theDate
from t_kernel
/这样程序就不用变动了
如果要用索引,就得建立 to_char(theDate,'YYYYMMDD') 的函数索引