1 / 5
文档名称:

Oracle日期格式.docx

格式:docx   大小:70KB   页数:5页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Oracle日期格式.docx

上传人:2072510724 2021/10/21 文件大小:70 KB

下载得到文件列表

Oracle日期格式.docx

相关文档

文档介绍

文档介绍:1/ 4
Oracle 时间格式讨论
在网上看见不少oracle新学者对oracle的时间格式很烦,经常是设计了一
个带时间字段的表之后,向表插入数据失败。回想起自己刚开始学****oracle
时,也对这个时间格式摸不着头脑,虽然是小小的问题,高手们不屑于讨论,
但对初学者来讲,这也是一个不大不小的坎,没找到门路的话,可能几天都过
不去,其实就是一层窗户纸,没什么难的。这里做一个简单的小结,因水平有
限,请高手补充指正。
oracle 对时间格式的数据存贮
oracle数据库中存放时间格式的数据,是以 oracle特定的格式存贮的,占7
个字节,与查询时显示的时间格式无关,具体哪个字节表示什么,我不太清
楚,请高手补充。存贮的时间包括 年__月 __日时分秒,最小精度为秒,不
存贮秒以下的时间单位。因此在一些前台支持毫秒级的程序 (如PB客户端程序)
连接到 oracle 数据库时应注意这点。查询时显示的时间格式,由会话环境决
定,或者由用户定义,与数据库无关。
oracle 时间显示形式
通常,客户端与数据库建立起连接后, oracle 就会给一个缺省的时间格式数
据的显示形式,与所使用的字符集有关。一般显示 年__月 __日,而不显示
时分秒。例如,使用us7ascii字符集(或者是其他的英语字符集 州寸,缺省的时间 格式显示为:28-Jan-2003而使用zhs16gbk字符集(或其他中文字符集)时时间 格式缺省显示为: 2003-1 月 -
28 。 " 向表中插入数据时,如果不使用转换函数,则时间字段的格式必须遵
从会话环境的时间格式,否则不能插入。查看当前会话的时间格式,可以使用
以下的SQL语句:
SQL> select sysdate from dual;
3向oracle表中插入时间格式的数据
向 oracle 表插入时间格式的数据是一个相对来讲比较麻烦的事情,要么你
3/ 4
严格遵从当前会话的时间格式书写你的时间值,要么使用转换函数自定义时间
数据的格式。有两个与时间相关的转换函数:
to_char和to_date。to_char(时间值,时间格式)函数将时间值转换为字符串 形式,通常在查询中使用;to_date(字符串,时间格式)则把格式字符串转换时间 值,通常在 insert 语句中使用。
在日期格式中,各种日期格式分量这里不作详细的讨论,请查 oracle 帮助
文档中这两个函数的用法,或者查一查 PL/SQ隔程的书,讲得很详细的。
4 如何修改会话中的日期格式
修改当前会话中的日期格式据说有三种办法,我只做过前两种办法的试
验,,不知道是不是真的能行。下面一一 解说。
(1)在 sql*plus 中修改当前会话的日期格式
SQL> alter session set nls_date_format = \'yy-mm-dd hh24:mi:
ss\';
将当前会话的时间格式修改为这种格式: 2003-01-2815:23:38,即四位年 -两
位月 -两位日,空格, 24 小时的制的小时:
分钟:
秒。
这种修改方法,只对当前会话有效。注意,是对当前会话,而不是当前的
sql*pl