I tried to insert a row on my sqLiteDatabase whith this code:
query = QtSql.QSqlQuery()
query.prepare('insert into rutas '
'(matricula, conductor, fecha, kmIn, kmFin, ,kmTotal, tarifaKm, tarifaTotal) '
'VALUES (:matricula, :conductor, :fecha, :ki, :kf, :kt, :tkm, :tt)')
query.bindValue(":matricula", str(newRuta[0]))
query.bindValue(":conductor", str(newRuta[1]))
query.bindValue(":fecha", str(newRuta[2]))
query.bindValue(":ki", int(newRuta[3]))
query.bindValue(":kf", int(newRuta[4]))
query.bindValue(":kt", int(newRuta[5]))
query.bindValue(":tkm", float(newRuta[6]))
query.bindValue(":tt", float(newRuta[7]))
if query.exec_():
QtWidgets.QMessageBox.information(None, 'Alta Ruta Correcta', 'Haga Click para Continuar')
else:
QtWidgets.QMessageBox.warning(None, query.lastError().text(), 'Haga Click para Continuar')
When the program reach the query.exec()
method it always goes to the else
sentence showing this error:
newRuta
is the array where i put my values and i have already checked that newRuta
works well.
You have doubled commas between kmFin
and kmTotal
.
query.prepare('insert into rutas '
'(matricula, conductor, fecha, kmIn, kmFin, ,kmTotal, tarifaKm, tarifaTotal) '
'VALUES (:matricula, :conductor, :fecha, :ki, :kf, :kt, :tkm, :tt)')
should be
query.prepare('insert into rutas '
'(matricula, conductor, fecha, kmIn, kmFin, kmTotal, tarifaKm, tarifaTotal) '
'VALUES (:matricula, :conductor, :fecha, :ki, :kf, :kt, :tkm, :tt)')