您的位置:首页 > 其它

房屋出租管理系统

2016-02-04 11:02 423 查看
本系统采用QT+Access开发
数据库连接头文件connection.h
#ifndef CONNECTION_H
#define CONNECTION_H

#include <QMessageBox>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QDebug>

QSqlDatabase db;
QSqlQuery query;
QString dsn;

static bool createConnection(){
    db = QSqlDatabase::addDatabase("QODBC", "test");  //test为数据库的名称
    QString dbname = "HouseManager.mdb";
    dsn = QString("DRIVER={Microsoft Access Driver (*.mdb)};FIL={MS Access};DBQ=%1").arg(dbname);    //dbname,为参数传递过来的数据库路径和名称
    db.setDatabaseName(dsn);
    db.open();
    if (!db.open()) {
        qDebug() << "打开数据库失败";
        QMessageBox::critical(0, qApp->tr("Cannot open database"),
                              qApp->tr("Unable to establish a database connection."
                                       ), QMessageBox::Cancel);
        return false;
    }

    query = QSqlQuery(db);
    return true;
}

static bool closeConnection(){
    if(db.isOpen()){

//        db.removeDatabase("QODBC");
//        QSqlDatabase::removeDatabase(dsn);//删除默认连接。
        QString  name = db.connectionName();
        db.close();
        qDebug() << name;
        query.clear();
        QSqlDatabase::removeDatabase(name);//删除默认连接。

        qDebug() << "关闭数据库";
    }
    if(query.isValid()){
//        query.clear();
        qDebug() << "query是有效的";
    }
    if(query.isActive()){
//        query.clear();
        qDebug() << "query是激活的";
//        query.
    }
    return true;
}
#endif // CONNECTION_H

本文出自 “优赛工作室” 博客,请务必保留此出处http://shamrock.blog.51cto.com/2079212/1431856
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: