この行で開いているデータベースをチェックすると、この問題が発生します
bool opened = PatternLibrary.open();
if(opened){
しかし、テーブル作成のクエリを実行しようとすると、この出力が得られずに失敗します
QSqlQuery::prepare: database not open
これは私のコードです
PatternLibrary = QSqlDatabase::addDatabase( "QSQLITE" );
PatternLibrary.setDatabaseName( "./Library.db" );
bool opened = PatternLibrary.open();
if(opened)
{
qDebug( "Connected!");
query.prepare( "CREATE TABLE IF NOT EXISTS Pattern (patternName VARCHAR(30),RectangleID INTEGER ,minWidth INTEGER, minHeight INTEGER, maxWidth INTEGER, maxHeight INTEGER, X Integer, Y INTEGER)" );
bool create = query.exec();
if(!create)
{
qDebug() <<PatternLibrary.lastError().text();
}
}
else
{
qDebug() << PatternLibrary.lastError().text();
qFatal( "Failed to connect." );
}