Python 使用组合框写入 Access db
Posted
技术标签:
【中文标题】Python 使用组合框写入 Access db【英文标题】:Python write to Access db with comboboxes 【发布时间】:2014-02-11 14:53:58 【问题描述】:美好的一天,我遇到了一个问题,我想看看是否有人知道如何解决这个问题,我有一个 python 脚本来控制访问中的字段。我需要能够查看该字段中的数据并将新信息写入数据库。我知道我需要使用 UpdateCursor。但是当我运行它时,我得到了几个错误,我不知道如何修复的错误。我是 python 新手。我只是想将组合框中的新数据写入 mdb。这是我表中一个字段的一个类。
class ISDComboBoxClass3(object):
"""Implementation for WOformV2_addin.combobox (ComboBox)"""
def __init__(self):
#self.items = ["12/1/2000", "5/3/2010"]
self.editable = True
self.enabled = True
self.dropdownWidth = 'WWWWWW'
self.width = 'WWWWWW'
def onSelChange(self, selection):
pass
def onEditChange(self, text):
fc = 'C:\GISdata\WO\WorkOrderData.shp'
field1 = "ISD"
cursor = arcpy.UpdateCursor(fc)
for row in cursor:
row.setValue(field1)
cursor.updateRow(row)
def onFocus(self, focused):
fc = 'C:\GISdata\WO\WorkOrderData.shp'
field1 = "ISD"
cursor = arcpy.UpdateCursor(fc)
for row in cursor:
row.setValue("ISD")
cursor.updateRow(row)
def refresh(self):
pass
【问题讨论】:
您收到什么错误?哪部分出错了?您使用的是名为 ARCGis 的库吗? 我确定,专门导入arcpy。错误是:“回溯(最近一次通话最后一次):文件“C:\Documents and Settings\204031\Local Settings\Application Data\ESRI\Desktop10.1\AssemblyCache\B46383D0-A9F1-8290-F9E7-53A0C7E79428\ WOformV2_addin.py",第 33 行,在 onFocus lyr = arcpy.mapping.ListLayers(mxd, "ISD", df)[0] IndexError: list index out of range 【参考方案1】:查看 ArcGIS 文档,看起来 row.setValue 需要 2 个参数。 示例:row.setValue(FieldIndex, value) http://resources.arcgis.com/en/help/main/10.1/index.html#//018v00000064000000
【讨论】:
以上是关于Python 使用组合框写入 Access db的主要内容,如果未能解决你的问题,请参考以下文章
我可以在从 Access DB 填充的组合框顶部添加一个额外的行吗
将我的数据从 access 2003 db 获取到 c# 的问题(dbReader.GetString 错误)