123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- #include "SqlDBHelper.h"
- #include <QApplication>
- #include <QMessageBox>
- bool SqlDBHelper::configFinished = false;
- bool SqlDBHelper::configFinished2 = false;
- QSqlDatabase SqlDBHelper::getDatabase(SqlDBHelper::SqlDBType dbType, const QString &connectionName)
- {
- switch (dbType) {
- case SqlDBHelper::SqlDBType::SQLITE3: {
- if (configFinished) {
- return SqlFactory::getInstance()->getDatabase();
- } else {
- QString databaseName = "./data/qfd.db";
- SqlFactory::DBSetting setting("QSQLITE", databaseName);
- configFinished = true;
- return SqlFactory::getInstance()->config(setting, connectionName)->getDatabase();
- }
- } break;
- case SqlDBHelper::SqlDBType::MYSQL: {
- if (configFinished) {
- return SqlFactory::getInstance()->getDatabase();
- } else {
- SqlFactory::DBSetting setting("QMYSQL", "localhost", 3306, "root", "123456", "qfd");
- configFinished = true;
- return SqlFactory::getInstance()->config(setting, connectionName)->getDatabase();
- }
- } break;
- }
- QMessageBox::critical(nullptr, QObject::tr("数据库连接异常"), QObject::tr("请检查数据库配置文件是否正常"));
- QApplication::exec();
- return SqlFactory::getInstance()->getDatabase(nullptr);
- }
- QSqlDatabase SqlDBHelper::getDatabase2(SqlDBHelper::SqlDBType dbType, const QString &connectionName)
- {
- switch (dbType) {
- case SqlDBHelper::SqlDBType::SQLITE3: {
- if (configFinished2) {
- return SqlFactory::getInstance2()->getDatabase();
- } else {
- QString databaseName = "./nodeData/node.db";
- SqlFactory::DBSetting setting("QSQLITE", databaseName);
- configFinished2 = true;
- return SqlFactory::getInstance2()->config(setting, connectionName)->getDatabase();
- }
- } break;
- case SqlDBHelper::SqlDBType::MYSQL: {
- if (configFinished2) {
- return SqlFactory::getInstance2()->getDatabase();
- } else {
- SqlFactory::DBSetting setting("QMYSQL", "localhost", 3306, "root", "123456", "qfd");
- configFinished2 = true;
- return SqlFactory::getInstance2()->config(setting, connectionName)->getDatabase();
- }
- } break;
- }
- QMessageBox::critical(nullptr, QObject::tr("数据库连接异常"), QObject::tr("请检查数据库配置文件是否正常"));
- QApplication::exec();
- return SqlFactory::getInstance2()->getDatabase(nullptr);
- }
|