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

时间:2019-01-24 18:02:04

标签: 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

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

1 个答案:

答案 0 :(得分:0)

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

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

因此您的解决方案是

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