Python 打开 ADODB 记录集并添加新记录

Python to open ADODB recordset and add new record

在我正在开发的 wxPython 应用程序中,我编写了一种方法,可以将新记录添加到访问数据库 (.accdb) 中。我已经从在线搜索中获得了这段代码,但是我无法让它工作。下面是代码:-

def Allocate_sub(self, event):
    pth = os.getcwd()
    myDb = pth + '\myAccessDB.accdb'
    DRV = '{Microsoft Access Driver (*.mdb)}'
    PWD = 'pw'
    # connect to db
    con = win32com.client.Dispatch(r'ADODB.Connection')
    con.Open('DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=%s' % (myDb))
    cDataset = win32com.client.Dispatch(r'ADODB.Recordset')
    #cDataset.Open("Allocated_Subs", con, 3, 3, 1)
    cDataset.Open("Allocated_Subs", con, 3, 3, 1)
    cDataset.AddNew()
    cDataset.Fields.Item("Subject").Value = "abc"
    cDataset.Fields.Item("UniqueKey").Value = "xyzabc"
    cDataset.Update()
    cDataset.close()
    con.close()

但是,每当我通过单击绑定它的按钮触发此代码时,我都会收到错误消息:-

谁能帮我解决这个问题,或者让我知道使用 ADODB 打开记录集然后向其中添加新记录的不同方法。

非常感谢。

此致, Premanshu

我想出了解决方案,张贴在这里以防万一有人提到它... 这是行

中的一个小修正
cDataset.Open("Allocated_Subs", con, 3, 3, 1)

应该是:-

cDataset.Open("Allocated_Subs", con, 1, 3)

此致, Premanshu