Название: QODBC ошибка Unable to execute primary key list
Отправлено: karpenko1989 от Февраль 27, 2012, 12:25
Здравствуйте. Строю дерево с использованием QSqlTableModel. При компиляции программы выводится предупреждение: "QODBCDriver::primaryIndex: Unable to execute primary key list" Error: ""
Дерево строится правильно, но текста не видно. Использую БД EMPRESS. Если же использовать SQlite, то все работает правильно. Может быть Кто-нибудь сталкивался с такой проблемой?
Название: Re: QODBC ошибка Unable to execute primary key list
Отправлено: Пантер от Февраль 27, 2012, 12:30
Код показывай.
Название: Re: QODBC ошибка Unable to execute primary key list
Отправлено: karpenko1989 от Февраль 27, 2012, 12:34
..... QSqlDatabase db = QSqlDatabase::addDatabase("QODBC"); db.setDatabaseName("emp_config"); db.setUserName("root");
.......
void TreeModel::setupModelData(TreeItem *parent) { QMap<int, TreeItem*> parents; parents.insert(0, parent);
QSqlQuery q;
qDebug() << q.exec("select id, tag_source, marker,name from cfg_test where ((id >= 1001) AND (id <= 1050))");
while (q.next()) { qDebug() << q.record();
int id = q.value(0).toInt(); QString tag_source = q.value(1).toString(); QString marker = q.value(2).toString();
if (marker.isEmpty()) { marker_int = marker.toInt(); marker_int = 0; } else { marker.truncate(4); marker_int = marker.toInt(); }
TreeItem *item = new TreeItem(id, parents.value(marker_int));
parents.value(marker_int)->appendChild(item);
if (!tag_source.isEmpty()) parents.insert(id, item); } }
|