如何在 Microsoft Access 数据库中创建查询对象? [复制]
Posted
技术标签:
【中文标题】如何在 Microsoft Access 数据库中创建查询对象? [复制]【英文标题】:How do I create a query object into the Microsoft Access database? [duplicate] 【发布时间】:2019-01-24 18:02:03 【问题描述】:我可以成功连接到 Microsoft Access 数据库;但是,我无法理解如何为查询创建 Access Database 对象。创建后,我试图将其验证为数据库中的对象。我尝试了一些选项,但它似乎没有创建任何查询对象。任何帮助表示赞赏。
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
我希望在数据库中看到查询对象,我可以在其中确认其设计。
【问题讨论】:
在con.close()
之前,您可能需要一个con.commit()
。
你先生很棒。成功了!
或者您可以使用您发布的同一链接中的 CreateQueryDef 示例。
【参考方案1】:
Python 的 DB API 2.0 指定连接默认为 autocommit=False
,这意味着所有操作都发生在必须提交或回滚的事务中。
对于某些数据库平台,CREATE TABLE
、CREATE VIEW
等 DDL 语句如果在事务中执行会失败,但 Access ODBC 似乎并不介意。但是,它确实需要在实际创建视图(Access 中保存的查询)之前提交事务。
所以在你的情况下的解决方案是做
csr.execute(sql)
con.commit() # persist the change
con.close()
【讨论】:
以上是关于如何在 Microsoft Access 数据库中创建查询对象? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Microsoft Access 数据库的附件数据类型?
如何在 Microsoft Access 数据库中创建查询对象? [复制]
如何使用空字符串更新 Microsoft Access 数据库?
在 Microsoft Access 2013 中,如何访问当前 ODBC 连接的用户名?