如何使用带有参数的SQL作为MS Access / VBA中的组合框行源

迷你G34

我想定义和使用带有参数的SQL字符串作为表单组合框的RowSource。我正在使用PARAMETERS来防止SQL注入。

我的SQL定义如下:

Dim strSql As String, strParm As String
Dim compID As Integer

compID = ...

strParm = "PARAMETERS [CompanyID] INT; "
strSql = strParm & "SELECT NAME, BUSINESS_NUMBER, FILE_ID FROM COMPANY WHERE COMPANY_ID = [CompanyID] ORDER BY CREATION_DATE;"

从我阅读的文档中,此类字符串通常与一起使用CreateQueryDef

使用值compID作为组合框(Me!myComboBox.RowSource的RowSource来使用此SQL结果的正确方法是什么

按照目前的编码方式,以下方法可以工作,但是在构建SQL语句时,我想避免字符串连接:

Me!myComboBox.RowSource = "SELECT NAME, BUSINESS_NUMBER, FILE_ID FROM COMPANY WHERE COMPANY_ID = " & compID & " ORDER BY CREATION_DATE;
埃里克·A

不幸的是,您不能直接在行源中使用参数。

但是,您可以在querydef中使用参数,使用该参数创建记录集,并使用该记录集填充组合框,例如:

With CurrentDb.CreateQueryDef("", strSql)
    .Parameters!CompanyID = compID
    Set myCombobox.Recordset = .OpenRecordset
End With

您还可以在行源中使用TempVars或基于表单的参数,例如

TempVars!CompID = compID
strSql = "SELECT NAME, BUSINESS_NUMBER, FILE_ID FROM COMPANY WHERE COMPANY_ID = TempVars!CompID ORDER BY CREATION_DATE;"

请参阅如何在Microsoft Access的不同上下文中在VBA中使用参数?有关更多信息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Access VBA中,如何从表的多个列中获取DISTINCT值作为组合框的行源?

来自分类Dev

MS Access 组合框列表顺序与行源不同

来自分类Dev

基于当前字段值的MS Access表单组合框行源

来自分类Dev

通过VBA MS Access将多值列的数据绑定到组合框中

来自分类Dev

组合框行源的SQL语句

来自分类Dev

在MS Access表单中设置组合框的默认值

来自分类Dev

MS ACCESS:强制在组合框中仅显示 X 字段

来自分类Dev

如何使用 SQL 删除 MS Access DB 中的重复行

来自分类Dev

Access VBA中不稳定的组合框比较

来自分类Dev

在MS Access中基于表单中的多个组合框查询所有记录

来自分类Dev

如何在使用VBA的Access中创建带有时间和日期戳的注释框

来自分类Dev

MS Access:组合框列顺序问题

来自分类Dev

Ms Access - 从组合框列更新图像

来自分类Dev

类似 MS Access 的 Flutter 组合框

来自分类Dev

如何在MS Access中使用VBA在列表框中添加新项目

来自分类Dev

插入两个暗淡的数组作为MS Access中的文本框和组合框的列表

来自分类Dev

如何根据多个属性删除ms access VBA中的行

来自分类Dev

MS Access Forms:如何动态更改组合框中的选择选项?

来自分类Dev

MS Access Forms:如何在组合框中动态更改选择选项?

来自分类Dev

MS Access-创建一个模块,使用VBA通过不同的组合框过滤子表单

来自分类Dev

如何从父路径提取带有扩展名的文件名?MS Access VBA

来自分类Dev

当文本框内容在 Access 2013 VBA 中更改时,如何将组合框的选择更改为默认值

来自分类Dev

SQL MS-Access中带有IIF和IsNull的动态Where条件

来自分类Dev

MS Access:将组合框中的选定条目插入表中

来自分类Dev

如何使用VBA在MS Access中添加新记录?

来自分类Dev

MS Access填充文本框和组合框

来自分类Dev

带有 where 条件的 MS Access 中的 openReport 操作

来自分类Dev

如何使用Access窗体中的组合框更新具有外键的记录,但显示该键的查找?

来自分类Dev

如何从Access数据库中检索某些数据并将其显示在组合框中

Related 相关文章

  1. 1

    在Access VBA中,如何从表的多个列中获取DISTINCT值作为组合框的行源?

  2. 2

    MS Access 组合框列表顺序与行源不同

  3. 3

    基于当前字段值的MS Access表单组合框行源

  4. 4

    通过VBA MS Access将多值列的数据绑定到组合框中

  5. 5

    组合框行源的SQL语句

  6. 6

    在MS Access表单中设置组合框的默认值

  7. 7

    MS ACCESS:强制在组合框中仅显示 X 字段

  8. 8

    如何使用 SQL 删除 MS Access DB 中的重复行

  9. 9

    Access VBA中不稳定的组合框比较

  10. 10

    在MS Access中基于表单中的多个组合框查询所有记录

  11. 11

    如何在使用VBA的Access中创建带有时间和日期戳的注释框

  12. 12

    MS Access:组合框列顺序问题

  13. 13

    Ms Access - 从组合框列更新图像

  14. 14

    类似 MS Access 的 Flutter 组合框

  15. 15

    如何在MS Access中使用VBA在列表框中添加新项目

  16. 16

    插入两个暗淡的数组作为MS Access中的文本框和组合框的列表

  17. 17

    如何根据多个属性删除ms access VBA中的行

  18. 18

    MS Access Forms:如何动态更改组合框中的选择选项?

  19. 19

    MS Access Forms:如何在组合框中动态更改选择选项?

  20. 20

    MS Access-创建一个模块,使用VBA通过不同的组合框过滤子表单

  21. 21

    如何从父路径提取带有扩展名的文件名?MS Access VBA

  22. 22

    当文本框内容在 Access 2013 VBA 中更改时,如何将组合框的选择更改为默认值

  23. 23

    SQL MS-Access中带有IIF和IsNull的动态Where条件

  24. 24

    MS Access:将组合框中的选定条目插入表中

  25. 25

    如何使用VBA在MS Access中添加新记录?

  26. 26

    MS Access填充文本框和组合框

  27. 27

    带有 where 条件的 MS Access 中的 openReport 操作

  28. 28

    如何使用Access窗体中的组合框更新具有外键的记录,但显示该键的查找?

  29. 29

    如何从Access数据库中检索某些数据并将其显示在组合框中

热门标签

归档