68 lines
1.9 KiB
C++
68 lines
1.9 KiB
C++
#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<StockInfo>& 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<double>& 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());
|
|
}
|
|
} |