如何在 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 TABLECREATE 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 连接的用户名?

如何将 sql server 链接到 Microsoft Access?

如何通过 JDBC 将值插入 Microsoft Access 数据库?