您的位置:首页 > 数据库

SQLITE数据库 封装很好的类

2015-10-10 08:29 447 查看
SqliteDatabase::SqliteDatabase()

{

}

SqliteDatabase::~SqliteDatabase()

{

QStringList nameList = QSqlDatabase::connectionNames();

foreach(QString name, nameList)

{

CloseDatabase(name);

}

}

/*

QString const& connectionName,ware.db数据库文件的路径

返回值:QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE", connectionName);

*/

QSqlDatabase SqliteDatabase::GetDatabase(QString const& connectionName)

{

if(QSqlDatabase::contains(connectionName))

{

//判断当前数据库ware.db中的连接中是否已经包含了connectionName这个连接

return QSqlDatabase::database(connectionName);

}

//新连接

QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE", connectionName);

db.setDatabaseName(connectionName);

//打开

if(db.isValid())

db.open();

return db;

}

void SqliteDatabase::CloseDatabase(QString const& connectionName)

{

{

QSqlDatabase db = QSqlDatabase::database(connectionName);

if(db.isValid() && db.isOpen())

db.close();

}

QSqlDatabase::removeDatabase(connectionName);

}

//使用这个类

QString dbFile = SuperDir().GetAppSettingsDBFileEx();//数据库的路径,用数据库的本地文件路径作为该数据库的连接的名字

QSqlDatabase sqlDatabase = m_spSqlite->GetDatabase(dbFile);

m_spAppSettingsDb = QSharedPointer<SettingsDB>(new SettingsDB(sqlDatabase));
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: