我有一个Python脚本,可以在ArcMap中更新并生成导出。 ArcMap文档从MS Access中提取要映射的数据。当前,我必须进入MS Access并在(在设计视图中)更新“从/到”列的日期标准并保存它,然后再运行脚本以生成导出。我希望能够仅在条件框中更新日期范围,保存查询并关闭连接。
我曾尝试使用SQL Update字符串,但由于参数太少而出错,并且我不希望它创建或更改任何表。只有我数据库中的查询。
db = pypyodbc.connect(
r"Driver={Microsoft Access Driver (*.mdb)};"+
r"Dbq=P:\path\path\path.mdb;")
sql = """SELECT DISTINCT"""
db.cursor().execute(sql).commit()
答案 0 :(得分:0)
要在通过ODBC的Access中创建保存的查询,我们可以使用CREATE VIEW
语句,例如
crsr.execute("CREATE VIEW CAD_Extract_Mapping AS SELECT ...")
不幸的是,Access SQL不支持ALTER VIEW
,并且DROP VIEW
也无效。但是,解决方法是使用DROP TABLE view_name
,例如
crsr.execute("DROP TABLE CAD_Extract_Mapping")
crsr.execute("CREATE VIEW CAD_Extract_Mapping AS SELECT ...")
请注意,许多DDL命令将无法在事务内执行,因此您可能需要使用
cnxn.autocommit = True
尝试以上操作之前。