qt sdk 4.8
firebird 2.5 и ibexpert
Создала базу данных и таблицу. Вставляя строки программно обратила внимание, что insert возвращает постоянно false, а строки вставляются исправно. К базе данных подключилось нормально. Команды update, delete, select работают правильно. Вот так выглядит запрос.
Оба поля int. id primary key.
QSqlQuery query2("INSERT INTO table2 (id, pump) VALUES ('2', '2')", db);
qDebug() << " exec insert "<< query2.exec()
<< " error "<< query2.lastError().text() << query2.lastError().number();
а нафига там кавычки стоят, если поля типа int?
Возможно дело в том, что:
http://doc.qt.io/qt-4.8/qsqlquery.html#QSqlQuery-2
lanz спасибо тебе!!!
Более менее рабочий вариант
QSqlQuery query2(db);
query2.prepare("INSERT INTO table2 (id, pump) "
"VALUES (:id, :pump)");
query2.bindValue(":id", 1121);
query2.bindValue(":pump", 23);
qDebug() << " exec insert "<< query2.exec()
<< " error "<< query2.lastError().text() << query2.lastError().number();
insert вернул true. в этом случае незачем читать что-то из lastError, там может быть что угодно.
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)