Qt - Основные классы для работы с БД (часть 2)

  Рет қаралды 16,776

Qt by Lev Alekseevskiy

Qt by Lev Alekseevskiy

10 жыл бұрын

Вторая часть видео, посвященная классам для работы с БД. Подробно рассмотрены особенности взаимодействия класса QSqlTableModel с СУБД. Показаны слабые и сильные стороны различных стратегий кэширования.

Пікірлер: 5
@user-qg4ef8yw2m
@user-qg4ef8yw2m 8 жыл бұрын
огромное спасибо автору за очень информативные уроки!
@user-hu7rq3wr6s
@user-hu7rq3wr6s 6 жыл бұрын
Большое спасибо, Лев! В особенности за идею об отслеживании SQL-запросов к БД. Есть еще возможность выводить все это в qDedug, в случае с SQLITE других вариантов наверное и нет. Создать слот-обработчик, и коннектить к нему сигналы модели. Такие как beforeUpdate(int, QSqlRecord &)), beforeInsert(QSqlRecord&) и другие. В конструкторе главной формы нечто навроде: connect(m_model, SIGNAL(beforeUpdate(int, QSqlRecord &)), this, SLOT(tracesqlite(int, QSqlRecord &))); Пока не разобрался, какой именно сигнал именно в какой ситуации лучше. Пригодятся наверное многие из имеющихся у модели. По срабатыванию сигнала выводить данные в qDebug. Выглядящий вот так слот: void MainWindow::tracesqlite(int n, QSqlRecord &rec) { int records=0; records = rec.count(); QString b=""; while (records>0) { b=b+"|"+rec.value(records).toString(); records=records-1; } qDebug()
@superivan132
@superivan132 8 жыл бұрын
Все отлично Лев, но только вы упустили один очень важный момент. Когда добавляеш строку, модели как то пофиг на то, какая стратегия используется. Она тупо не запишет новую строку в БД. Запишет только если ввести значение в ячейку новой строки и нажать клавишу ентер.
@user-tz8vs7lc4j
@user-tz8vs7lc4j 7 жыл бұрын
10:03 почему WireShark не ловит UPDAT'ы при изменении таблицы?
@stasandr
@stasandr 4 жыл бұрын
Подскажите пожалуйста, как отслеживать запросы с бд Oracle, пытался найти подобную утилиту, не нашел
Qt - Основные классы для работы с БД (часть 3)
26:56
Лев Алексеевский
Рет қаралды 12 М.
Qt - Основные классы для работы с БД (часть 1)
15:13
Лев Алексеевский
Рет қаралды 42 М.
HOW DID HE WIN? 😱
00:33
Topper Guild
Рет қаралды 34 МЛН
KINDNESS ALWAYS COME BACK
00:59
dednahype
Рет қаралды 118 МЛН
Nutella bro sis family Challenge 😋
00:31
Mr. Clabik
Рет қаралды 11 МЛН
Qt - Драйверы для работы с БД (QMYSQL, QIBASE, QPSQL)
27:58
Лев Алексеевский
Рет қаралды 23 М.
Работа с виджетами Qt на примере небольшого приложения
28:14
Молодёжная студия «Я»
Рет қаралды 2,5 М.
Qt - Настройки приложения (QSettings)
19:38
Лев Алексеевский
Рет қаралды 9 М.
клиент-сервер в QT | QTcpServer просто!
15:38
Программный Кот
Рет қаралды 33 М.
QML - Позиционирование элементов 1 (координаты, якоря)
20:41
Qt - Использование таймеров в Qt
10:36
Лев Алексеевский
Рет қаралды 15 М.
Redis за 20 минут
23:22
suchkov tech
Рет қаралды 107 М.
Создаем базу данных в Qt
7:27
Программный Кот
Рет қаралды 28 М.
HOW DID HE WIN? 😱
00:33
Topper Guild
Рет қаралды 34 МЛН