SQL语句VBA代码Access 2007结束后找到的字符

时间:2009-12-11 19:14:24

标签: sql ms-access

我正在Excel中编写VBA代码以访问Access数据库。

我正在使用此提供商

"Provider=Microsoft.ACE.OLEDB.12.0; Data Source= " & DBFile & ";"

这是我的SQL字符串

SQlSrc = "SELECT YEAR FROM Data ORDER BY YEAR ASC"
SQlSrc = SQlSrc & ";SELECT STN FROM STN_List WHERE include = TRUE"

当我单独打开每个记录集时,它可以正常工作(只是第一行或第二行)但是当我像上面那样制作一个语句时,我得到一个错误

  

“在SQL语句结束后找到的字符”

是否有人知道Access 2007是否存在问题?

3 个答案:

答案 0 :(得分:2)

您可以重复使用该连接。

Dim cn As Object
Dim rs As Object

cn="Provider=Microsoft.ACE.OLEDB.12.0; Data Source= " & DBFile & ";"

SQlSrc = "SELECT YEAR FROM Data ORDER BY YEAR ASC"
rs.Open SQlSrc, cn

''Do stuff

SQlSrc = "SELECT STN FROM STN_List WHERE include = TRUE"
rs.Open SQlSrc, cn

cn.Execute "UPDATE Table SET Column=2"

答案 1 :(得分:1)

看起来Access和/或提供程序不接受多个SQL语句来打开单个记录集。

那就是说,我不确定这是否是所有OLEDB供应商的标准配置,还是您所使用的那个。

答案 2 :(得分:1)

IMO MS Access不支持单个Command中的多个SELECT语句。您可能必须将其拆分为单独的命令。