繁体   English   中英

在Python 3.2中无法识别pyodbc“ commit”命令

[英]pyodbc “commit” command not recognised in Python 3.2

有人在Python 3.2上安装了pyodbc吗? 我有,一切都很好,除了解释器无法识别“ commit()”。 还有其他人遇到同样的问题吗? 有人知道我做错什么了吗? 谢谢,约翰·R

我找到了解决方法。 仍然无法使commit()正常工作,但是在pyodbc.connect()函数中,如果包含了“ autocommit = True”,则所有插入都将自动提交,并且您无需使用commit()函数。 例如

conx = pyodbc.connect("""Driver={Microsoft Access Driver (*.mdb, *.accdb)};
                         DBQ=C:\Documents and Settings\Owner\My Documents\
                         Database2.accdb;""", autocommit = True)

这是我使用commit()的代码的示例:

   cnxn = pyodbc.connect('Driver={Microsoft Access Driver (*.mdb, *.accdb)}; Dbq=F:\\computing\\Payroll v2 2\\\employees.accdb')
   cursor = cnxn.cursor()
   cursor.execute("insert into Medication(ID, Doctor, NameOfMedication, Dosage, DateStart, DateEnd, Notes, LastUpdated) values (?,?,?,?,?,?,?,?)",self.ui.residentComboBox.currentText().split()[0], self.ui.doctorLineEdit.text(), self.ui.nameOfMedicationLineEdit.text(), self.ui.dosageLineEdit.text(), self.ui.dateStartDateEdit.text(), self.ui.dateEndDateEdit.text(), self.ui.notesTextEdit.document().toPlainText(), self.ui.lastUpdatedDateTimeEdit.dateTime().toString("dd/MM/yyyy, hh:mm:ss")) 
   cursor.execute("update Medication set MedEndMonth=? where ((ID=?)) ",month,resID)                
   cnxn.commit()
   self.close()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM