web-dev-qa-db-ja.com

QtでSQLiteデータベースを作成する方法

QtでSQLiteデータベースを作成しようとしています。ここに私のコードがあります:

QDir databasePath;
QString path = databasePath.currentPath()+"myDb.db";
QSqlDatabase dbConnection = QSqlDatabase:addDatabase("QSQLITE");
db.setDatabaseName(path);
db.open();

コードの実行中にエラーはありませんが、定義したパスに作成したデータベースが見つかりません。これは実際にデータベースを作成しますか、それとも何らかの初期化を行いますか?

データベースが作成されない場合、アプリケーション自体にデータベースを作成するにはどうすればよいですか? (挿入については話していません。)

14
user3009135

また、空でないデータベースを作成し、変数の正しい名前を使用するクエリを作成する必要があります(コードでは、最初にdbConnectionを使用し、その後にdbを使用します。例:

QString path = "path";
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");//not dbConnection
db.setDatabaseName(path);
db.open();
QSqlQuery query;
query.exec("create table person "
          "(id integer primary key, "
          "firstname varchar(20), "
          "lastname varchar(30), "
          "age integer)");
21
Chernobyl