51 lines
1.2 KiB
C++
51 lines
1.2 KiB
C++
#include "database.h"
|
|
|
|
#include <iostream>
|
|
#include <cstring>
|
|
#include <QVariant>
|
|
|
|
using std::vector;
|
|
|
|
DataBase::DataBase()
|
|
{
|
|
this->db = new QSqlDatabase();
|
|
*this->db = QSqlDatabase::addDatabase("QSQLITE");
|
|
this->db->setDatabaseName("Renndatenbank.sqlite");
|
|
std::cout << "Konstruktor Database" << std::endl;
|
|
}
|
|
|
|
vector< vector<QString> > DataBase::getData(std::string statement, int cols){
|
|
|
|
char * buffer = new char[statement.length()-1];
|
|
strcpy(buffer,statement.c_str());
|
|
vector<QString> data;
|
|
vector< vector<QString> > lines;
|
|
bool ok = this->db->open();
|
|
QString qstr;
|
|
if(ok){
|
|
QSqlQuery query(buffer);
|
|
|
|
while(query.next()){
|
|
|
|
for(int i = 0; i < cols; i++){
|
|
qstr = query.value(i).toString();
|
|
data.push_back(qstr);
|
|
}
|
|
lines.push_back(data);
|
|
data.erase(data.begin(), data.begin()+cols);
|
|
}
|
|
}
|
|
this->db->close();
|
|
return lines;
|
|
}
|
|
|
|
void DataBase::setData(std::string statement){
|
|
char * buffer = new char[statement.length()];
|
|
strcpy(buffer,statement.c_str());
|
|
bool ok = this->db->open();
|
|
if(ok){
|
|
QSqlQuery query(buffer);
|
|
}
|
|
this->db->close();
|
|
}
|