Alain Bertrand wrote:
Joe Wilson a écrit :

--- Alain Bertrand <[EMAIL PROTECTED]> wrote:


> --- Alain Bertrand <[EMAIL PROTECTED]> wrote:

In a Qt4 application, I have the following bit of code :

  QString s;
     bool b;
     QSqlQuery q;
     QSqlError err;
     s= "CREATE TABLE ttd_bdata (sheetId integer primary key,";
     s+="creation_date date, modif_date date,";
     s+="speciesId integer,USDA_zone integer,";
     s+="generalities text,propagation text,care text,";
     s+="esthetics text, phyto text,miscellaneous text)";
     //s="SELECT * FROM ttd_species WHERE speciesId=4";
     qWarning( s.toAscii() );
     b=q.exec( s );

Executing the query fails with the following information

SQL logic error or missing database
Unable to fetch row
Err number 1.

If the query is remplaced by the commented one, I got no error. If I open
my database file with sqliteman, the query is executed without any
problem. Some ideas ?


I don't understand your description, but here are some random thoughts
that might help you:


Thanks for your answer.


CREATE statements do not return any rows.


Yes, so why do I get this message from the qt driver ?


Your select table did not match the create statement table. Instead:

  Use "SELECT * FROM ttd_bdata WHERE speciesId=4"


This is not an error. The table is not created so the select on a table
which I know does exists is here to prove that I don't have a "missing
database" error.

To add to obscurity, if I run the same function in a different context, it
is ok but very simple queries (like UPDATE ttd_version SET minor='1' WHERE
Id=1) fails both in my app and in sqliteman.

I would now think of a QT/sqlite driver bug. Does anybody heard of some
problem with the sqlite driver in the qt4 libs of Ubuntu feisty ?



Don't use += in this case


ok.

AlainQT4

Use the sqlite3 command line tool to look at what has been created.


-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to