在 Oracle 和 PHP 中日期和时间的使用.doc

在 Oracle 和 PHP 中日期和时间的使用.doc

ID:27211812

大小:51.50 KB

页数:9页

时间:2018-12-01

在 Oracle 和 PHP 中日期和时间的使用.doc_第1页
在 Oracle 和 PHP 中日期和时间的使用.doc_第2页
在 Oracle 和 PHP 中日期和时间的使用.doc_第3页
在 Oracle 和 PHP 中日期和时间的使用.doc_第4页
在 Oracle 和 PHP 中日期和时间的使用.doc_第5页
资源描述:

《在 Oracle 和 PHP 中日期和时间的使用.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、如果您是初次接触PHP或Oracle,那么设计一个高效处理日期的策略可能会比较困难。您可能曾经在其他平台上成功应用过一些策略,但这些策略是否适合Oracle与PHP组合?这篇Oracle+PHP文章将帮助您了解PHP和Oracle提供的用于处理日期和时间的功能,以及它们相互之间的关系。这样,你将学习到使用何种技术来解决什么问题,并回答类似“是在PHP还是在Oracle中计算这两个日期之间的差”这样的问题。Oracle中的日期和时间Oracle提供了三个用于存储日期/时间值的数据类型:·表示日期和时间的DATE类型。DATE字段

2、中存储的值包含有与世纪、年、月、日、小时、分钟和秒相对应的“组成部分”。日期可以是公元前4712年1月1日到公元9999年12月31日这一范围中的任何一天。·从Oracle9i开始提供的TIMESTAMP类型是DATE类型的有效扩展格式,并且符合ANSISQL标准。它提供了更大的时间精度,支持多达九位的小数,同时还能够存储时区信息。·从Oracle9i开始提供的INTERVAL类型,它支持存储时间差(如“两年零五个月”或“三天零十八个小时零四十五分钟”),并可以与DATE或TIMESTAMP进行加法运算以生成一个新的DATE/

3、TIMESTAMP值。本文主要介绍DATE类型,但适用于DATE的大部分功能也适用于TIMESTAMP。(有关TIMESTAMP和INTERVAL类型的更多背景知识,请阅读JonathanGennick在Oracle杂志上发表的文章“DatetimeDatatypesAddPrecision”和“FindingtheTimeinBetween”(这两篇文章均在2002年11月-12月刊中发表)。Oracle如何存储DATE。对于Oracle中的DATE类型,首先要了解的是,它的内部表示形式使它可以通过不同的方法进行显示和操作。

4、它有效地独立于任何特定的字符串格式。如果使用SELECT选择一个DATE类型,Oracle将自动把它转换为可读字符串,但这并不是值的实际存储方法。使用SYSDATE选择当前的系统时间,SYSDATE返回DATE类型的值,是数据库所在的操作系统的当前日期和时间:SELECTSYSDATEFROMdual/*e.g.25-JUL-05*/该格式受Oracle参数NLS_DATE_FORMAT的控制,可以根据每个会话进行更改(如下所示)。了解一下内部表示形式:SELECTDUMP(SYSDATE)FROMdual/*e.g.Typ=

5、13Len=8:213,7,7,25,23,7,15,0*/结果中由逗号分隔的值对应于Oracle存储日期和时间的每个部分(从世纪一直到秒)所使用的字节。此处有一个重要问题值得注意:在比较DATE类型时,将比较DATE的所有组成部分(一直比较到秒)。在某些情况下,您可能要根据不同的时间单位(如年、月或日)比较两个日期。这种情况下,可以使用TRUNC这样的函数对所比较的两个DATE的小时、分钟和秒部分进行向下取整。有关更多详细信息,请参阅下面的“日期运算”。如果您熟悉面向对象的编程,则也可将DATE类型看作是对象。他们全都拥有属

6、性(年、月、小时等)和行为,如:SELECTSYSDATE-7FROMdual/*e.g.18-JUL-05*/该示例返回七天前的日期。其它的“行为”包括DATE比较,这意味着您可以对日期执行SORTBY、GROUPBY以及查找界于两个日期之间的日期(BETWEEN)等,还可以进行减法操作:从一个DATE中减去另一个DATE以获得整数的日期差(在使用TIMESTAMP时,将获得INTERVAL类型)。在DATE类型和字符串之间进行转换。TO_DATE()和TO_CHAR()函数用于在OracleDATE“对象”和使用者可理解的

7、日期字符串之间进行转换。这两个函数均使用三个参数,一个要转换的值、一个可选的格式掩码和一个用于指定语言的可选字符串(例如,FRENCH)。从概念上而言,格式掩码类似于正则表达式;您指定日期模式,该模式指示Oracle如何将匹配的字符串与DATE类型关联。Oracle数据库SQL参考的“格式模型”中介绍了格式掩码。使用TO_CHAR。以下是一个简单示例,它再次使用了SYSDATE函数:SELECTTO_CHAR(SYSDATE,'YYYY-MM-DDHH24:MI:SS')FROMdual/*e.g.2005-07-2617:3

8、4:04*/详细了解一下该格式掩码,“YYYY”表示一个四位年份,“MM”表示一个两位月份,“DD”表示一个两位的月份中的日,“HH24”表示24小时制的小时,“MI”表示0和59之间的分钟,“SS”表示0和59之间的秒。注意,以下字符从格式掩码按原样传递到输出:/-,.;:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。