Найти - Пользователи
Полная версия: QSqlQuery,узнать кол-во результатов?
Начало » Базы данных » QSqlQuery,узнать кол-во результатов?
1
aliens
Подскажите, а как узнать кол-во результатов, полученых от базы данных? например,для узнавания кол-ва полученых строк, можно использовать query.size(). А для узнавания столбцов? Для прмиера запрос: SELECT * FROM table, то получу query.value(0) = 1, query.value(1) = test
Как узнать кол-во value?
shiza
а база данных какая?
а то какой-то незнакомый интрефейс методов =)
но наверное что-то типа len(query.value) или len(query.value())
aliens
shiza
а база данных какая?
а то какой-то незнакомый интрефейс методов =)
но наверное что-то типа len(query.value) или len(query.value())
ну база то MYSQL. Соединяюсь через QSqlQuery (Qt4).. Ваши оба варианты не работают :) проверял до напсиания
shiza
Хм. не разу не пробовал через QT.
Поэтому в голову приходит только извращенный вариант.
—————-
s = 0
while 1:
try:
query.value(s)
except:
break
s += 1
size = s+1
—————-

А вот кстати в QSqlQuery Class Reference написано:
Using SELECT * is not recommended because the order of the fields in the query is undefined.
j2a
Как бы сказать повежливей. Когда делается SQL-запрос, подразумевается, что тот кто его делает, знает структуру таблиц, а не наугад “select * from foo”. Это раз. Использовать Qt-шный интерфейс к БД в Python, когда есть Python DB API нужно осмысленно. Соответственно, иметь представление, что это биндинг к C++-библиотеке, и API отнюдь не pythonic. И что нужно искать в документации к Qt. Это два. Ну и желательно приводить полный код программы, это три.


#!/usr/bin/python
# encoding: utf-8
from PyQt4 import QtSql

db = QtSql.QSqlDatabase.addDatabase('QSQLITE')
db.setDatabaseName('dev.sqlite')
db.open()
query = QtSql.QSqlQuery('SELECT * FROM pyobject_models_project_version')
query.exec_()
while query.next():
print u“-”*10
rec = query.record()
for idx in xrange(rec.count()):
print u“%s: %s” % (unicode(rec.fieldName(idx)),
unicode(rec.value(idx).toString()))
db.close()

$ ./pyqtsql.py
----------
version: 0.2.1
released_at: 2007-02-27 21:08:00.0
url: http://cheeseshop.python.org/pypi/pytils/0.2.1
id: 1
project_id: 1
----------
version: 0.0.1-dev_r98
released_at: 2007-06-17 00:01:14.0
url: http://cheeseshop.python.org/pypi/YDbf/0.0.1dev-r98
id: 2
project_id: 2
aliens
j2a
спасибо.
Ну я доку по Qt4 и читаю…
Просто интересно стало… Думал это делать легче можно)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB