Название: qt + PostgreSQL. Транзакции Отправлено: vorotislav от Июнь 23, 2014, 12:46 Доброго времени суток. Начал работать с БД PostgreSQL через транзакции. Все замечательно работает - и добавляет записи, и редактирует и удаляет. Но при закрытии программы вылезают в окошке "Вывод приложения" следующие записи:
РџР Р•Р”РЈРџР Р•Р–Р”Р•РќР˜Р•: транзакция уже выполняется РџР Р•Р”РЈРџР Р•Р–Р”Р•РќР˜Р•: нет незавершённой транзакции Перевел на русский через Notepad++: ПРЕДУПРЕЖДЕНИЕ: транзакция уже выполняется ПРЕДУПРЕЖДЕНИЕ: нет незавершённой транзакции И не пойму в чем дело. Повесил на каждое открытие\закрытие qDebug() : if (QSqlDatabase::database().transaction()) qDebug() << "tr addSchemaPoint start"; ... if (QSqlDatabase::database().commit()) qDebug() << "tr addSchemaPoint commit"; При выполнении приложения на каждый старт есть свой коммит, а сообщения все равно остаются. И даже не могу понять какая из транзакций выполняется. Не подскажете как быть? Может как то можно отловить эту выполняющуюся транзакцию. И второе сообщение немного не понятно. Если нет незавершенных транзакций - то зачем предупреждение делать? Заранее благодарен! Название: Re: qt + PostgreSQL. Транзакции Отправлено: Old от Июнь 23, 2014, 12:53 У postgresql нет вложенных транзакций.
Если вы сделали один раз begin(), то транзакция запустилась, повторный вызов begin() ничего не делает, кроме выдачи предупреждения. Тоже и с commit: первый закрывает начатую транзакцию, второй выдает предупреждение, что активных транзакций нет. Название: Re: qt + PostgreSQL. Транзакции Отправлено: vorotislav от Июнь 23, 2014, 14:24 Old, спасибо большое! Наверняка проблема в этом, у меня есть такие ситуации! Сегодня уберу:)
|