按照我的步骤一步一步来就行,
1.加头文件,在main.cpp
#include <QSqlDatabase>
#include <QDebug>
2.在main.cpp的主函数创建数据库
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
3.打开数据库
if(db.open())
{
qDebug()<<"打开数据库成功"<<endl;
}else
{
qDebug()<<"打开数据库失败"<<endl;
}
4.创建表存储用户和密码
//创建一个存储user和密码的的数据库表
QString cmd = "create table if not exists userinfo(username varchar(64),password varchar(64))";
5.执行sql语句,sql语句都使用query.exec()来执
//执行sql语句
QSqlQuery query;
if(query.exec(cmd))
{
qDebug()<<"exec suc"<<endl;
}else
{
qDebug()<<"exec no"<<endl;
}
6.qtUI设计
然后点击注册按钮,右键转到槽,对登录按键也转到槽(也可以自己写槽函数)
7.注册按键的槽函数中,使用qDebug(),记得加头文件<QDebug>
(1)获取输入的用户和密码
QString username = this->ui->lineEdit_user->text();
QString password = this->ui->lineEdit_pass->text();
(2)把输入的数据插入到表中,并进行判断,插入是否成功
QString cmd = QString("insert into userinfo values('%1','%2')").arg(username) .arg(password);
QSqlQuery query;
if(query.exec(cmd))
{
qDebug()<<"insert suc"<<endl;
}else
{
qDebug()<<"insert no"<<endl;
}
8.登录模块槽函数
(1)获取输入的用户和密码
QString username = this->ui->lineEdit_user->text();
QString password = this->ui->lineEdit_pass->text();
(2)这个地方我们使用sql的模型来进行查询
加头文件#include <QSqlTableModel>
(3)创建模型
//创建model
QSqlTableModel *model = new QSqlTableModel;
(4)绑定表
//绑定表
model->setTable("userinfo");
(5)过滤数据
//过滤数据
model->setFilter(QString("username='%1' and password='%2'").arg(username).arg(password));
(6)查询
//查询
model->select();
(7)结果
//结果
int row = model->rowCount();
if(row>0)
{
qDebug()<<"登录成功"<<endl;
}else
{
qDebug()<<"登录失败"<<endl;
}```