2016-09-01 2 views
0

を追加しました。アクセスデータベース(.accdb)に新しいレコードを追加するメソッドを作成しました。私はオンライン検索からこのコードを調達しましたが、それを機能させることはできません。以下のコードされています - 私はそれBIND持っているボタンをクリックすることで、このコードをトリガーするたびPythonでADODBレコードセットを開き、私が開発しているwxPythonアプリケーションに新しいレコード

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

答えて

1

私は、誰かがそれを参照するだけの場合には、ここでの投稿、解決策を考え出し... はそれが

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

ラインの小さな修正だ、それは次のようになります -

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

よろしく、 Premanshu

関連する問題