Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 17, 2013 15:56:52

Cover Story
От:
Зарегистрирован: 2008-08-26
Сообщения: 192
Репутация: +  0  -
Профиль   Отправить e-mail  

PyQt4 QtSql Получить сообщение об ошибке от сервера.

Всем доброго.
Передаю в базу mysql через процедуру ‘setup_seal_sc’ значение с целью изменить данные. При этом скрипт подключается к базе и выполняет процедуру. Повторный запуск этого же скрипта отрабатывает без ошибок(хотя она есть). Как ее можно вытащить?

# -*- coding: utf-8 -*-
from PyQt4 import QtGui, QtSql
import sys
main=QtGui.QApplication(sys.argv)
#Инициализация БД
dbase = QtSql.QSqlDatabase.addDatabase('QMYSQL')
dbase.setHostName('www.yyy.ru')
dbase.setPort(3306)
dbase.setDatabaseName('report')
dbase.setUserName('user')
dbase.setPassword('pass')
ok = dbase.open()
if ok:
    print u"Открыта"
query = QtSql.QSqlQuery(dbase)
query.prepare("CALL setup_seal_sc('25', 1, '16.04.2013', 52, '3', 69)")
query.exec_()
dbase.commit()
dbase.close()
P.S. Пробовал с MySQLdb ошибка отображается. Пробовал на qt5 с питоном3.3 ошибки тоже не видно.



Python 2.7.3
Pyside 1.1.2

Офлайн

#2 Апрель 17, 2013 17:27:39

reclosedev
От: Н.Новгород
Зарегистрирован: 2012-03-29
Сообщения: 870
Репутация: +  173  -
Профиль   Отправить e-mail  

PyQt4 QtSql Получить сообщение об ошибке от сервера.

Qt не выбрасывает исключений, на ошибки нужно проверять самому.

if not query.exec_():
    print query.lastError()
http://qt-project.org/doc/qt-4.8/qsqlquery.html#lastError
http://qt-project.org/doc/qt-4.8/qsqldatabase.html#lastError

Офлайн

#3 Апрель 18, 2013 07:23:53

Cover Story
От:
Зарегистрирован: 2008-08-26
Сообщения: 192
Репутация: +  0  -
Профиль   Отправить e-mail  

PyQt4 QtSql Получить сообщение об ошибке от сервера.

Спасибо reclosedev!



Python 2.7.3
Pyside 1.1.2

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version