关于VB与Oracle数据库中的日期转换

发表于:2007-05-25来源:作者:点击数: 标签:数据库oracle日期中的关于
在 数据库 的 开发 过程中,你可能会遇到ORACLE与 VB 的日期类型不匹配,无法直接比较的问题。而VB中又没有专门的函数可以转换ORACLE的日期,这个问题该如果解决呢?其实在ORACLE 的自带函数库里有一个很有用的函数TO_DATE(),它可以将日期字符串按照自己

  在数据库开发过程中,你可能会遇到ORACLE与VB的日期类型不匹配,无法直接比较的问题。而VB中又没有专门的函数可以转换ORACLE的日期,这个问题该如果解决呢?其实在ORACLE 的自带函数库里有一个很有用的函数TO_DATE(),它可以将日期字符串按照自己定义的格式转换为ORACLE格式的日期。示例代码如下:
  
  声明:Cn 为数据库链接对象
  Dim datBirthday as Date 注释:出生日期
  Dim strSql as String 注释:SQL语句
  Dim rs as ADODB.Recordset 注释:结果集对象
  
  DatBirthday=# 10/1/1980 #
  StrSql = "SELECT NAME FROM TABGROUP_2001" _
  &" WHERE BIRTHDAY= TO_DATE(注释:"&Cstr(DatBirthday) &"注释:,注释:yyyy-mm-dd注释:)
  rs.open strSql
  
  注意函数后面的部分:YYYY-MM-DD,这是你提供的日期字符串的日期格式参数,ORACLE 将根据你的格式参数读取日期(表1中列出经常会用到的参数)。
  如果要还原回来怎么办呢?没关系,我们还有另一个函数TO_CHAR(date),它与To_DATE是一对反函数,使用的格式也与TO_DATE类似,这里也举一个简单的例子,假设我们要查询系统时间,那么格式如下:
  SELECT TO_CHAR(SYSDATE,注释:DD-MON-YYYY HH24:MI:SS注释:) "Right Now"
  From Dual;
  结果显示:
  Right Now
  ―――――――――――――――――――
  16-Nov-2001 14:23:22
  
  对照下面的参数表,相信你很快就能够掌握这两个函数的应用的
  日期格式参数 含义说明
  D 一周中的星期几
  DAY 天的名字,使用空格填充到9个字符
  DD 月中的第几天
  DDD 年中的第几天
  DY 天的简写名
  IW ISO标准的年中的第几周
  IYYY ISO标准的四位年份
  YYYY 四位年份
  YYY,YY,Y 年份的最后三位,两位,一位
  HH 小时,按12小时计
  HH24 小时,按24小时计
  MI 分
  SS 秒
  MM 月
  Mon 月份的简写
  Month 月份的全名
  W 该月的第几个星期
  WW 年中的第几个星

原文转自:http://www.ltesting.net