我使用Pyodbc将我的程序连接到MS Access。在Access数据库中,我预先创建了一些需要参数的查询。在Python中执行它们时,如何将值传递给查询的参数?通过Pyodbc使用所需参数运行MS Access中保存的查询?
1
A
回答
0
当Access数据库包含保存它们被访问ODBC暴露的存储过程,并可以使用ODBC {call ...}
语法调用参数查询。例如,
PARAMETERS prmLastName Text (255);
SELECT Clients.ID, Clients.LastName, Clients.FirstName, Clients.Email
FROM Clients
WHERE (((Clients.LastName)=[prmLastName]));
名为[ClientEmails]保存的查询......下面的Python代码将运行查询和特定姓返回结果:
cmd = "{call ClientEmails(?)}"
params = ("Thompson",)
crsr.execute(cmd, params) # pyodbc "cursor" object
for row in crsr.fetchall():
print(row)
0
这里是一个通用的例子。首先,连接到数据库。然后,发出命令。该命令只是一个字符串。你可以通过简单的字符串连接在你的代码中引入其他地方的变量。
import pyodbc
connStr = """
DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};
DBQ=C:\full\path\to\your\PYODBC.accdb;
"""
cnxn = pyodbc.connect(connStr)
cursor = cnxn.cursor()
desired_column = "Forename"
table_name = "Student"
command = "SELECT " + desired_column + " FROM " + table_name
cursor.execute(command)
row = cursor.fetchone()
if row:
print(row)
相关问题
- 1. MS Access PYODBC查询
- 2. MS Access参数查询
- 3. 从c#运行MS Access保存的查询#
- 4. MS Access中的单参数多查询
- 5. MS Access报告通过查询传递SQL Server的参数
- 6. 在MS Access中运行异步查询
- 7. 提示用户查询参数MS Access
- 8. MS Access - 在VBA中按名称执行已保存的查询
- 9. 通过n记录查询MS Access Group
- 10. 使用pyodbc将行插入到MS Access MDB中,如何转义参数?
- 11. 在MS Access VBA中,如何使用参数调用存储的附加查询?
- 12. 通过使用Microsoft Access的查询获取组中的行数
- 13. MS Access参数化查询VB
- 14. MS Access交叉表查询参数
- 15. 使用DAAB调用MS Access存储查询参数使用DAAB v5.0
- 16. MS Access查询
- 17. MS ACCESS查询
- 18. MS Access:在参数查询中使用带连字符的参数
- 19. MS Access查询 - 使用参数值的选定记录一个
- 20. MS-Access如何使用查询带有参数的形式
- 21. MS Access:查询重复使用/提供查询参数使用VBA
- 22. Python中参数查询的语法(pyodbc)
- 23. 我如何使用MS-Access查询转换行中的MS Access列(选择statment)
- 24. 查询的MS Access
- 25. MS Access 2003中的查询
- 26. Ms-access中的查询
- 27. Ms-access中的SQL查询
- 28. 通过MS Access查询返回的限制,但计算查询或表中的所有行
- 29. MS Access 2007:计数查询
- 30. pyodbc - 从MS Access(MDB)数据库
谢谢戈德! – Knoel