Вторник, 15.10.2019, 01:59
CPP и Qt для всех
Приветствую Вас Гость | RSS
Главная Регистрация Вход
Меню сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа

Главная » 2012 » Апрель » 27 » Qt и работы с базами данных SQLite
11:33
Qt и работы с базами данных SQLite

Добрый день, дорогие посетители!

Сегодня я хотел бы поговорить с Вами о работе с базами данных в Qt. Мною будет написана небольшая статья и конкретная задача с исходным кодом.

Итак, начнем. Предполагается, что, читая эту статью, вы уже имеете четкое представление о базах данных и какая роль отводится таблицам в этих базах данных. Если же вы еще не знаете этого, то советую перейти по ссылке и более подробно прочесть данный материал. В отличие от источника, мы будем использовать в своем примере базу данных SQLite, а не MySQL. Она отличается монолитной структурой в отличие от MySQL, в которой подразумевается наличие клиента и сервера. Недостатки и преимущества есть о обеих вариантов, но это выходит за рамки данного поста.

В Qt для работы с базами данных используется модуль QtSql. В нем реализованы функции для работы с таблицами, полями, строками, колонками, ячейками и т.д. QtSql позволяет работать с разными типами баз данных. Со списком поддерживаемых типов можно ознакомиться в официальной документации. Чтобы включить модуль QtSql для работы, нужно добавить в файл проекта (*.pro) первую строку, а в исходный код программы - вторую строку:

QT += sql
#include <QtSql>

Лучше всего любую задачу разбирать не в теории, а на практике. Для этого я сейчас опишу конкретную задачу и её выполнение. Предположим, что нам нужно создать для будущих целей класс работы с базой данных SQLite, основными функциями которого будут получение значения по ключу и вставка нового значения по ключу.

В этой задачу давайте рассмотрим ключевые моменты, которые необходимо учесть при решении этой задачи. Нужно грамотно написать функции подключения к базе данных, а также к таблице в этой базе данных. В программе это реализовано с помощью проверок и, если такого не существует, то происходит создание новой базы и новой таблице.

Второй ключевой момент заключается в том, что при вставке новых значений нам необходимо сначала уточнить, существует ли запись с таким уникальным ключом? Если нет - добавляем просто новую запись в новую строку, если есть - нам необходимо перезаписать существующее значение.

Ниже я выложу полностью готовый проект, который можно скомпилировать на своем компьютере и воспользоваться данным решением.




Для удобства я выложил также и архив с файлами исходных текстов. Их можно загрузить по ссылке.

Просмотров: 3357 | Добавил: Callidus | Теги: Sqlite | Рейтинг: 5.0/1
Всего комментариев: 0
Имя *:
Email *:
Код *:
Поиск

Календарь
«  Апрель 2012  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
30

Архив записей

Друзья сайта
  • Евгений Василенко
  • Блог молодого таланта

  • Copyright MyCorp © 2019 Создать бесплатный сайт с uCoz