簡體   English   中英

如何檢查數據庫是否存在?

[英]How to check database is exist or not?

我在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;
    }

我創建了數據庫。 信息。 怎么檢查? 謝謝。

您只需使用QFile檢查數據庫文件是否存在:

if (QFile::exists(db_Name)) {
    // database exists
}

當您嘗試打開一個不存在的文件時,SQLite會創建一個空數據庫。

因此,如果您想知道是否需要為應用程序創建表,只需運行查詢以檢查這些表是否存在:

SELECT * FROM sqlite_master WHERE name = 'MyTable';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM