0

Python 3.2でpyodbcをインストールした人はいますか?私は持っています、そして通訳者が「commit()」を認識しないことを除いてすべてが順調です。他の誰かが同じ問題を抱えていますか?私が何か間違ったことをしているのか誰か知っていますか?ありがとう、ジョンR

4

2 に答える 2

1

私はそれを回避する方法を見つけました。まだ 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)
于 2013-01-25T21:09:29.267 に答える
0

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()
于 2013-04-07T17:00:00.137 に答える