// Connect to the SQLITE Database
bool MainWindow::connectToDB()
{
//Um PostgreSQL zu vervenden muss der QPSQL Treiber QPSQL verwendet werden.
db.setDatabaseName("LernIT.db");
}
// QSQLTableModel to show and manipulate data on the sqlite database
void MainWindow::showWords()
{
ui.description_le->setDisabled(true);
setWhite();
ui.l1_le->clear();
ui.l2_le->clear();
ui.plural_le->clear();
ui.description_le->clear();
model->setTable("words_tbl");
model->select();
//model->removeColumn(0); // don't show the ID
model->setHeaderData(1, Qt::Horizontal, tr("Deutsch"));
model->setHeaderData(2, Qt::Horizontal, tr("Portuguiesisch"));
ui.tableView->setModel(model);
ui.tableView->setColumnHidden(0, true);
ui.tableView->sortByColumn(1);
ui.tableView->show();
}
// I am using this Script to insert new rows to the database:
insert.prepare("insert into words_tbl (language1, language2, plural, description) values ('"
+ ui.l1_le->text() + "', '" + ui.l2_le->text() + "','" + ui.plural_le->text() + "', '" + ui.description_le->text() + "')");
if( ! insert.exec() ) {
QMessageBox::information(this,
"LernIT",insert.
lastError().
text());
return;}
//To select some data i am using this script:
QSqlQuery count
("SELECT words_id FROM words_tbl WHERE rowid>=random() % (SELECT max(words_id)+1 FROM words_tbl) LIMIT 1;");
while(count.next())
{
random = count.value(0).toString();
}
// Connect to the SQLITE Database
bool MainWindow::connectToDB()
{
//Um PostgreSQL zu vervenden muss der QPSQL Treiber QPSQL verwendet werden.
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("LernIT.db");
}
// QSQLTableModel to show and manipulate data on the sqlite database
void MainWindow::showWords()
{
ui.description_le->setDisabled(true);
setWhite();
ui.l1_le->clear();
ui.l2_le->clear();
ui.plural_le->clear();
ui.description_le->clear();
QSqlTableModel *model = new QSqlTableModel;
model->setTable("words_tbl");
model->setEditStrategy(QSqlTableModel::OnFieldChange);
model->select();
//model->removeColumn(0); // don't show the ID
model->setHeaderData(1, Qt::Horizontal, tr("Deutsch"));
model->setHeaderData(2, Qt::Horizontal, tr("Portuguiesisch"));
ui.tableView->setModel(model);
ui.tableView->setColumnHidden(0, true);
ui.tableView->sortByColumn(1);
ui.tableView->show();
}
// I am using this Script to insert new rows to the database:
QSqlQuery insert;
insert.prepare("insert into words_tbl (language1, language2, plural, description) values ('"
+ ui.l1_le->text() + "', '" + ui.l2_le->text() + "','" + ui.plural_le->text() + "', '" + ui.description_le->text() + "')");
if( ! insert.exec() ) {
QMessageBox::information(this,"LernIT",insert.lastError().text());
return;}
//To select some data i am using this script:
QString random;
QSqlQuery count("SELECT words_id FROM words_tbl WHERE rowid>=random() % (SELECT max(words_id)+1 FROM words_tbl) LIMIT 1;");
while(count.next())
{
random = count.value(0).toString();
}
To copy to clipboard, switch view to plain text mode
Bookmarks