#include "mainwindow.h" #include "ui_mainwindow.h" #include #include #include #include #include MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_pushButton_clicked() { // .pro ... QT += ... sql // #include // #include QSqlDatabase db = QSqlDatabase::addDatabase ("QSQLITE"); // db.setDatabaseName (":memory:"); db.setDatabaseName ("file.sqlite"); db.open (); QString cmd = "DROP TABLE colors"; db.exec (cmd); cmd = "CREATE TABLE colors " "(name TEXT, red INTEGER, green INTEGER, blue INTEGER)"; db.exec (cmd); cmd = "INSERT INTO colors (name, red, green, blue) VALUES" "('blue', 0, 0, 255) ," "('red', 255, 0, 0) ," "('orange', 255, 128, 0) ," "('green', 0, 255, 0)" ; db.exec (cmd); cmd = "SELECT * FROM colors"; QSqlQuery q = db.exec (cmd); QSqlRecord rec = q.record(); QString s; for (int i = 0; i < rec.count (); i ++) s = s + rec.fieldName (i) + " " ; ui->textEdit->append (s); ui->textEdit->append ("-------------"); while (q.next ()) { // QString s = q.value ("name").toString(); QString s; for (int i = 0; i < rec.count (); i++ ) s = s + q.value (i).toString() + " "; ui->textEdit->append (s); } QSqlTableModel * model = new QSqlTableModel (); model->setTable ("colors"); model->select (); ui->tableView->setModel (model); }