QtでSQLiteデータベースを作成しようとしています。ここに私のコードがあります:
QDir databasePath;
QString path = databasePath.currentPath()+"myDb.db";
QSqlDatabase dbConnection = QSqlDatabase:addDatabase("QSQLITE");
db.setDatabaseName(path);
db.open();
コードの実行中にエラーはありませんが、定義したパスに作成したデータベースが見つかりません。これは実際にデータベースを作成しますか、それとも何らかの初期化を行いますか?
データベースが作成されない場合、アプリケーション自体にデータベースを作成するにはどうすればよいですか? (挿入については話していません。)
また、空でないデータベースを作成し、変数の正しい名前を使用するクエリを作成する必要があります(コードでは、最初に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)");