Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 2
Регистрация: 26.10.2014
Сообщений: 7
1

Qt Mac OS, не удаётся получить данные в SQLite

16.07.2015, 15:44. Просмотров 420. Ответов 4
Метки нет (Все метки)


Здравствуйте, уважаемые формучане, у меня такая проблема:

Подключился к БД, написал запрос для получения данных:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include "schedule_edit.h"
#include "ui_schedule_edit.h"
#include <QComboBox>
#include <QtSql>
#include <QMessageBox>
#include <QSqlError>
#include <functions.h>
#include <QStringListModel>
 
Schedule_edit::Schedule_edit(QWidget *parent)
    : QWidget(parent), ui(new Ui::Schedule_edit)
{
  ui->setupUi(this);
 
  ui->tableWidget->setColumnWidth(1, 150);
 
  QStringList list;
  model = new QStringListModel();
 
  QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
  db.setDatabaseName("/Users/andreymityulin/Desktop/S2.sqlite");
 
  QSqlQuery query;
 
  if (db.isOpen())
  {
 
    query.exec("SELECT OVERALL FROM LESSONS_NAMES_5_9");
 
    QSqlRecord rec = query.record();
 
    while (query.next())
    {
        list << query.value(rec.indexOf("OVERALL")).toString();
    }
 
    model->setStringList(list);
 
    ui->listView->setModel(model);
 
    db.close();
  }
 
}
Но почему-то ничего не возвращается, listView остается пустым, хотя в столбце "OVERALL" записи есть.
Гарантирую, что путь к базе данных - верный.
Помогите, пожалуйста!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.07.2015, 15:44
Ответы с готовыми решениями:

Получить данные о сети: IP роутера к которому подключен телефон, MAC
Как получить данные о сети. а именно - IP роутера к которому подключен телефон, MAC и т.д.

Не удается получить данные из формы
Код html с формой: &lt;!DOCTYPE html&gt; &lt;html &gt; &lt;head&gt; &lt;meta http-equiv=&quot;Content-Type&quot;...

Не удается получить данные из <div>
Господа,есть вопрос. необходимо получить содержимое блока &lt;div&gt;, а точнее текст,без тегов(в...

Скрипт рейтинга - не удается получить данные из БД
здравствуйте не могу разобраться с кодом скрипт рейтинга, пытался весь день решить проблему сам....

4
Псевдослучайный
1936 / 1137 / 96
Регистрация: 13.09.2011
Сообщений: 3,205
16.07.2015, 16:03 2
А где db.open()? И вообще, добавьте проверки ошибок.
0
0 / 0 / 2
Регистрация: 26.10.2014
Сообщений: 7
16.07.2015, 17:24  [ТС] 3
И с db.open() тоже ничего не работает, Qt ошибок никаких не выдает.

Добавлено через 1 час 16 минут
Решение:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include "schedule_edit.h"
#include "ui_schedule_edit.h"
#include <QComboBox>
#include <QtSql>
#include <QMessageBox>
#include <QSqlError>
#include <functions.h>
#include <QStringListModel>
 
Schedule_edit::Schedule_edit(QWidget *parent)
    : QWidget(parent), ui(new Ui::Schedule_edit)
{
  ui->setupUi(this);
 
  ui->tableWidget->setColumnWidth(1, 150);
 
  QStringList list;
  model = new QStringListModel();
 
  QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
  db.setDatabaseName("/Users/andreymityulin/Desktop/S2.sqlite");
 
  if (db.isOpen())
  {
    QSqlQuery query;
 
    QSqlRecord rec = query.record();
 
    query.prepare("SELECT OVERALL FROM LESSONS_NAMES_5_9");
 
    while (query.next())
    {
        list << query.value(0).toString();
    }
 
    model->setStringList(list);
 
    ui->listView->setModel(model);
 
    db.close();
  }
 
}
0
1396 / 1253 / 262
Регистрация: 10.11.2013
Сообщений: 3,763
16.07.2015, 18:20 4
Цитата Сообщение от Quirtel Посмотреть сообщение
И с db.open() тоже ничего не работает
без open вообще работать не должно.

где у вас QSqlQuery::exec после query.prepare()?
0
0 / 0 / 2
Регистрация: 26.10.2014
Сообщений: 7
16.07.2015, 18:24  [ТС] 5
Извиняюсь, забыл добавить строчку:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include "schedule_edit.h"
#include "ui_schedule_edit.h"
#include <QComboBox>
#include <QtSql>
#include <QMessageBox>
#include <QSqlError>
#include <functions.h>
#include <QStringListModel>
 
Schedule_edit::Schedule_edit(QWidget *parent)
    : QWidget(parent), ui(new Ui::Schedule_edit)
{
  ui->setupUi(this);
 
  ui->tableWidget->setColumnWidth(1, 150);
 
  QStringList list;
  model = new QStringListModel();
 
  QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
  db.setDatabaseName("/Users/andreymityulin/Desktop/S2.sqlite");
 
  if (db.isOpen())
  {
    QSqlQuery query;
 
    QSqlRecord rec = query.record();
 
    query.prepare("SELECT OVERALL FROM LESSONS_NAMES_5_9");
 
    if(!query.exec())
    {
        qDebug() << query.lastError().text();
    }
 
    while (query.next())
    {
        list << query.value(0).toString();
    }
 
    model->setStringList(list);
 
    ui->listView->setModel(model);
 
    db.close();
  }
 
}
Вот. С этим кодом всё полностью работает.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.07.2015, 18:24

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Не удается получить данные с сервиса погоды
Добрый день. Есть небольшое приложение ASP.NET MVC, где есть : модель ,в которой реализованы классы...

CKEDITOR: не удается получить данные из формы
Всем привет! кто нибудь работал с редактором ckeditor? У меня такая проблемка, не получаеться...

Интернет-эквайринг. Не удается получить данные от банка
Господа, новичку нужна ваша помощь. Ситуация такая: после того, как на стороне банка клиент...

Ошибка: Не удается получить данные схемы для таблицы или представления Клиенты.
При попытке подключить базу данных , конкретный столбец , пишет вот такую ошибку : &lt;Клиенты&gt; Не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.