服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > 数据库技术 > Oracle技术 > Oracle开发 > 查看文档

深入讲解vb与oracle数据库的日期转换

在日常的工作中,你可能会遇到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-2008 16:11:10

对照下面的参数,你会很快掌握这两个的函数应用。

日期格式参数以及含义的说明

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──年中的第几个星期

扫描关注微信公众号