我在qt中使用sqlite数据库。我使用setDatabase(“”)函数时创建的数据库。但我不知道如何检查相同的数据库是否存在。这是我的代码:
//add database driver
db = QSqlDatabase::addDatabase ("QSQLITE");
//create database
if(db.databaseName () == db_Name){
qDebug() << "Database exist or not created." << endl;
} else {
db.setDatabaseName (db_Name);
qDebug() << "Database created." << endl;
}
//opening connection
db.open ();
//if connection created
if(db.isOpen ()){
qDebug() << "Database connected." << endl;
} else {
qDebug() << "Database not connected." << endl;
}
我创建了数据库。信息。怎么检查?感谢。
答案 0 :(得分:0)
您只需使用QFile
检查数据库文件是否存在:
if (QFile::exists(db_Name)) {
// database exists
}
答案 1 :(得分:0)
当您尝试打开一个不存在的文件时,SQLite会创建一个空数据库。
因此,如果您想知道是否需要为应用程序创建表,只需运行查询以检查这些表是否存在:
SELECT * FROM sqlite_master WHERE name = 'MyTable';