/********************************connection.h***********************************************************/
#ifndef CONNECTION_H
#define CONNECTION_H
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QMessageBox>
#include <QDebug>
static bool QCreateConnection()
{
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
qDebug()<<"添加
数据库";
db.setDatabaseName("mysql1.db");
qDebug()<<"设置
数据库名字";
if(!db.open())
{
qDebug()<<"数据库打开失败";
QMessageBox::critical(0,"Cannot open database","Unable to establish a database connection.",QMessageBox::Cancel);
return false;
}
QSqlQuery query;
qDebug()<<"query变量创建成功";
query.exec("create table student(id int primary key,name varchar(20),course int)");
query.exec("insert into student values(1,'李强',11)");
query.exec("insert into student values(2,'马亮',11)");
query.exec("insert into student values(3,'孙红',12)");
query.exec("insert into student values(4,'薛静',10)");
//创建course表
query.exec("create table course(id int primary key,name varchar(20),teacher varchar(20)");
query.exec("insert into course values(10,'数学','王老师')");
query.exec("insert into course valuse(11,'英语','张老师')");
query.exec("insert into course valuse(12,'计算机','白老师')");
qDebug()<<"写入数据成功";
return true;
}
#endif // CONNECTION_H
/*************************************mainwindow.h********************************************************************/
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QSqlTableModel>
class QSqlTableModel; //添加类的前置声明
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
Ui::MainWindow *ui;
QSqlTableModel *model;
};
#endif // MAINWINDOW_H
/****************************************************mainwindow.cpp********************************************************************/
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "connection.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
model = new QSqlTableModel(this); // QSqlTableModel *model;
model->setTable("student");
model->select();
//设置编辑策略
model->setEditStrategy(QSqlTableModel::OnManualSubmit);
ui->tableView->setModel(model);
// ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
/****************************************************main.cpp************************************************/
#include "mainwindow.h"
#include "connection.h"
#include <QDebug>
#include <QApplication>
#include <QTextCodec>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QTextCodec::setCodecForLocale(QTextCodec::codecForLocale());
if(!QCreateConnection())
{
qDebug()<<"数据库连接失败";
return 1;
}
MainWindow w;
w.show();
return a.exec();
}
下面是程序运行时出现的untitled.exe停止运行
window.open('http://www.qtcn.org/bbs/attachment/Mon_1604/17_166243_3ec86af4564fc5b.png?34');" style="max-width:700px;max-height:700px;" onload="if(is_ie6&&this.offsetWidth>700)this.width=700;" > 这
问题该怎么解决啊?大神们。我都重新写了好几次代码了