@nika09

Что за ошибка и как ее исправить при подключении и получении данных из БД через QT?

подключаю базу данных к программе, при попытке нажимая на кнопку получить данные из БД выскакивает некая ошибка:

QSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connection removed.

подскажите пожалуйста отчего она возникает и как ее исправить?

код main.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QtSql/QSqlDatabase"
#include "QSqlQuery"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

 //   QSqlDatabase database = QSqlDatabase::addDatabase("QSQLITE");
   // database.setDatabaseName("C:Users/NikaB/Desktop/blabla/TestSQL/database.db3");
   // if (!database.open())
     //   ui->label->setText("open the database");
   // else
     //   ui->label->setText("connected...");
}
void MainWindow::on_pushButton_clicked()
{
    QSqlDatabase db;
    db = QSqlDatabase::addDatabase("QSQLITE");
    db.setDatabaseName("baza/database.db3");
    db.open();

    //Осуществляем запрос
    QSqlQuery query;
    query.exec("SELECT _id, Name, Age FROM People");

    //Выводим значения из запроса
    while (query.next())
    {
    QString _id = query.value(0).toString();
    QString Name = query.value(1).toString();
    QString Age = query.value(2).toString();
    ui->textEdit->insertPlainText(_id+" "+Name+" "+Age+"\n");
    }
}


MainWindow::~MainWindow()
{
    delete ui;
}
  • Вопрос задан
  • 2299 просмотров
Пригласить эксперта
Ответы на вопрос 3
@Wexter
Ответ написан
Комментировать
Zifix
@Zifix Куратор тега Qt
Barbatum
Читайте документацию, или на худой конец любой учебник по Qt.
Ответ написан
Комментировать
kkmspb
@kkmspb
хобби C++, Qt, десктоп, микроконтроллеры STM32
Собственно каждый раз кликая on_pushButton_clicked, каждый раз подключаете базу, надо один раз делать addDatabase.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы