1、pro文件添加 QT += sql
2、头文件添加:
#include <QtSql>
#include <QSqlDatabase>
#include <QSqlError>
#include <QSqlQuery>
#include <QSqlQueryModel>
#include <QString>
#include <QFile>
#include <QVariantList>
#include <QDebug>
3、源文件:
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("ClientManage.db");
if(!db.open())
{
qDebug()<< "database is error";
}
else
{
qDebug()<<"database is ok";
}
QSqlQuery query(db);
query.exec("CREATE TABLE ClientManage ("
"Name VARCHAR(20) PRIMARY KEY, "
"Sex CHAR NOT NULL, "
"Email VARCHAR(20) NOT NULL, "
"QQ VARCHAR(20) NOT NULL,"
"Address VARCHAR(50) NOT NULL"")");
QString s1 = ui->lineEdit->text();
QString s2 = ui->lineEdit_2->text();
QString s3 = ui->lineEdit_3->text();
QString s4 = ui->lineEdit_4->text();
QString s5 = ui->comboBox->currentText();
query.prepare("INSERT INTO ClientManage (Name, Sex,Email,QQ,Address) "
"VALUES (:Name,:Sex,:Email,:QQ,:Address)");
query.bindValue(":Name",s1);
query.bindValue(":Sex",s5);
query.bindValue(":Email",s2);
query.bindValue(":QQ",s4);
query.bindValue(":Address",s3);
query.exec();
QSqlQueryModel *model = new QSqlQueryModel(ui->tableView);
model->setQuery("select * from ClientManage");
model->setHeaderData(0,Qt::Horizontal,QObject::tr("Name"));
model->setHeaderData(1,Qt::Horizontal,QObject::tr("Sex"));
model->setHeaderData(2,Qt::Horizontal,QObject::tr("Email"));
model->setHeaderData(3,Qt::Horizontal,QObject::tr("QQ"));
model->setHeaderData(4,Qt::Horizontal,QObject::tr("Address"));
ui->tableView->setModel(model);