python - 如何在 Microsoft Access 数据库中创建查询对象?

标签 python python-2.7 ms-access view pyodbc

我可以成功连接到Microsoft Access数据库;但是,我无法理解如何为查询创建 Access 数据库对象。创建后,我尝试将其验证为数据库中的对象。我尝试了一些选项,但它似乎没有创建任何查询对象。如有任何帮助,我们将不胜感激。

How to create permanent MS Access Query by Python 3.5.1?

对我不起作用,我不知道为什么。

sql ="""\
{CREATE AND NAME VIEW AS A SELECT STATEMENT}
"""
csr.execute(sql)
con.close()
del csr

我希望在数据库中看到查询对象,我可以在其中确认其设计。

最佳答案

Python 的 DB API 2.0 指定连接默认为 autocommit=False,这意味着所有操作都发生在必须提交或回滚的事务中。

对于某些数据库平台,如果在事务中执行 DDL 语句,例如 CREATE TABLECREATE VIEW 等,将会失败,但 Access ODBC 似乎不会头脑。但是,它确实需要在实际创建 View (Access 中保存的查询)之前提交事务。

所以你的情况的解决方案是这样做

csr.execute(sql)
con.commit()  # persist the change
con.close()

关于python - 如何在 Microsoft Access 数据库中创建查询对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54352841/

相关文章:

python - Python 可以让列表更高效吗?

python - PySide/PyQt : Execute functions after GUI loads

java - 从 MS Access 中提取 OLE 对象(Word 文档)

asp.net - 如何使用递增变量在标签中显示 .mdb 信息

python - Django 无法访问模型中的所有对象

python - Moto模拟lambda发布SNS

python - 两个数据库表之间的关系

sql - 从 DAO.Recordset 将完整行添加到表中

python - 在 Django 中创建自定义用户模型的新实例

Python:在关键字前后抓取文本