首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在sql ms-Access-2010中使用模块

在sql ms-Access-2010中使用模块
EN

Stack Overflow用户
提问于 2018-01-08 07:11:34
回答 1查看 639关注 0票数 0

我已经在我的模块中定义了一个过程,返回数据库的路径,我想在我的sql查询中使用这个路径。

模块中的程序:

代码语言:javascript
复制
Public Function pathOfBillingSoftware() As String

    pathOfBillingSoftware = """path"""

End Function

我在sql查询中使用上面的函数:

代码语言:javascript
复制
SELECT *
FROM tableName IN  pathOfBillingSoftware();

它给了我错误:“from子句中的错误”

但是当我在vba代码中使用它时,它工作得很好。

代码语言:javascript
复制
a = pathOfBillingSoftware()

  sql = "INSERT INTO tableName  " & _
     "IN " & a & _
    " SELECT * FROM tableName"

    currentdb.Execute sql

有解决办法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-08 07:57:15

这是动态SQL。您似乎已经找到了解决方案:使用VBA代码。只能使用函数返回静态SQL中的值。

如果希望返回运算符或其他非标准值的内容,则需要使用动态SQL,因此需要使用VBA。

如果需要,可以通过VBA创建查询,但请注意,一旦创建了查询,查询就会是静态的。

用函数创建查询的示例代码

代码语言:javascript
复制
CurrentDb.CreateQueryDef "MyQuery", "SELECT * FROM tableName IN " & pathOfBillingSoftware();
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48145737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档