Oracle数据库中的VBA ADODB DATE字段类型

时间:2015-02-17 13:01:53

标签: sql oracle vba adodb

我有一个VBA / ADODB代码,它将Excel连接到Oracle DB并运行SQL查询。问题是Excel中的记录集将Oracle DATE字段显示为adDBTimeStamp (135),即使在Oracle中它们也存储为简单日期。基本上我只想将DD.MM.YYYY部分导入Excel。是否可以在将其导入Excel之前更改记录集中的ADODB字段类型?我知道我可以在导入后用VBA更改格式,但我不想这样做。

代码如下所示:

query = "SELECT NAME,DATE1,DATE2,DATE3 from MY_TABLE"
rs.Open query, Con
Sheets("data_source").Range("A2").CopyFromRecordset rs
Con.Close

1 个答案:

答案 0 :(得分:0)

请注意,Oracle DATE类型存储的日期和时间最多为秒。如果只想获取数据的日期部分,只需在查询中使用trunc函数:

query = "SELECT NAME,trunc(DATE1),trunc(DATE2),trunc(DATE3) from MY_TABLE"