Qt在链接MySQL后没有报错但是区域显示都是一片空白,表名数据库名都没有错误,驱动也安装完毕。
实在是不知道怎么回事了Qt版本是5.9.2 mysql是8.0.17 navicat版本是15
#include "widget.h"
#include "ui_widget.h"
#include <QSqlDatabase>
#include <QDebug>
#include <QMessageBox>
#include <QSqlError>
#include <QSqlTableModel>
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
//打印Qt支持的数据库驱动
qDebug() << QSqlDatabase::drivers();
//添加MySQL数据库
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
//连接数据库
db.setHostName("127.0.0.1 ");//数据库服务器IP
db.setUserName("root");//数据库用户名
db.setPassword("123456");//密码
db.setDatabaseName("car");//使用哪个数据库
//打开数据库
if(!db.open())//打开失败
{
return;
QMessageBox::warning(this,"错误",db.lastError().text());
}
//设置模型
model = new QSqlTableModel(this);
model->setTable("C_APPLICANT");//指定哪个表
//把model放在view里面
ui->tableView->setModel(model);
//显示model里的数据
model->select();
}
Widget::~Widget()
{
delete ui;
}