Hi Brian,

thanks for your reply. To learn QT4 a little, I created a little and very 
stupid test program which is supposed to open 2 sqlite3 databases. They were 
created with libdbd-sqlite3-perl and I can work with the sqlite3 binary on 
them.

When I run the QT test program, it throws out the error:
"unsupported file format Unable to fetch row". The database does connect ok, 
but finds no tables, and the queries all fail.

Any help would be greatly appreciated. It might well be my fault.
Source code below, very crappy, debugging state. 

Thanks in advance.

Martin


---------------
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

#include <string>

#include <QString>
#include <QStringList>
#include <QVariant>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QSqlError>
//#include <qsql_sqlite.h>

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
        QSqlDatabase mapper_db = QSqlDatabase::addDatabase("QSQLITE", 
"v11n-mapper");
        mapper_db.setDatabaseName("v11n-mapper.db");
        if (!mapper_db.open()) printf("Could not connect to mapper 
database!\n");
        QSqlDatabase schema_db = QSqlDatabase::addDatabase("QSQLITE", 
"v11n-schema");
        schema_db.setDatabaseName("v11n-schema.db");
        if (!schema_db.open()) printf("Could not connect to schema 
database!\n");

        printf("db tables %s\n", 
schema_db.tables().join(", ").toStdString().c_str() );
        if (!schema_db.isValid()) printf("db invalid\n");

//      for (int i=1; i++; i>1000){
                QString QueryString = QString("SELECT * FROM bible"); 
                QSqlQuery query( QueryString, schema_db );
                query.exec();
                if (!query.isActive()) {
                        printf("db 
%s\n",schema_db.lastError().text().toStdString().c_str());
                        printf("qery 
%s\n",query.lastError().text().toStdString().c_str());
                }
                //printf("%i", i);
                printf("%s", QueryString.toStdString().c_str() );
                while (query.next()) {
                        printf("%s", 
query.value(0).toString().toStdString().c_str() );
                }
//      }

  return EXIT_SUCCESS;
}


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to