#include "qdbmanagement.h" QDBManagement::QDBManagement(QObject* parent) : QObject(parent) { } void QDBManagement::initConnect(QString db, QString pwd) { QSqlError error; if (db == nullptr) db = "tradedata"; if (pwd == nullptr) pwd = "Kexin2008"; m_Database = QSqlDatabase::addDatabase("QMYSQL"); m_Database.setHostName("localhost"); m_Database.setUserName("root"); m_Database.setDatabaseName(db); m_Database.setPassword(pwd); m_Database.setPort(3306); error = m_Database.lastError(); if (error.isValid()) { switch (error.type()) { case QSqlError::NoError: qDebug() << "无错误"; break; case QSqlError::ConnectionError: qDebug() << error.text(); break; case QSqlError::StatementError: qDebug() << error.text(); break; case QSqlError::TransactionError: qDebug() << error.text(); break; default: qDebug() << error.text(); break; } } if (!m_Database.open()) { qDebug() << "Database not open!"; } } void QDBManagement::selectStockList(QVector& list) { QSqlQuery query; QString sql = "select * from auto_stocklist"; query.exec(sql); while (query.next()) { StockInfo stock; stock.strCode = query.value(1).toString(); stock.strName = query.value(2).toString(); stock.fcurPrice = query.value(3).toFloat(); stock.fShare = query.value(4).toFloat(); list.push_back(stock); } } void QDBManagement::selectStockKofDay(QString strCode, std::vector& KList) { QString table = "r_" + strCode.mid(3); QSqlQuery query; QString sql = "select * from " + table; query.exec(sql); while (query.next()) { double dataP; KList.push_back(query.value(3).toFloat()); } }