Thanks for the offer.

I think I just figured what the trouble was.
The query in that table should be enclosed in single quotes as it is
a TEXT field. Instead though I had enclosed it in double quotes, so I did
chr(34) & strQuery & chr(34) instead of:
chr(39) & strQuery & chr(39)

Had to go to work, but I think this is what the trouble was, so indeed
a simple VBA bug and little to do with SQLite.
Will see if I can test it in a bit and confirm that this was the trouble.

RBS


> If you want to email me a copy of the table I'd be more than happy to try
> running it here and see what happens.  You can send it to epankoke @ gmail
> dot com.
>
> --
> Eric Pankoke
> Founder / Lead Developer
> Point Of Light Software
> http://www.polsoftware.com/
>
>  -------------- Original message ----------------------
> From: "RB Smissaert" <[EMAIL PROTECTED]>
>> lReturnedRows is one of the function arguments, so that is fine.
>>
>> I have made some progress though and that is that this problem only
>> occurs
>> with this particular table, called SQL. It is a table that logs all the
>> SQL
>> statements that run in my app. When I instead make this for example
>> sqlite_master there is no problem ever.
>> No idea though why this table would cause a problem. Could it be that
>> one of the items in that table is a reserved word?
>>
>> CREATE TABLE 'SQL'
>> ([STATEMENT_COUNT] INTEGER,
>> [DB] TEXT,
>> [QUERY_TIME] TEXT,
>> [QUERY_LENGTH] REAL,
>> [QUERY] TEXT)
>>
>> Any other ideas what could be wrong with this table?
>>
>> I could mail a db with that table if that would be helpful.
>>
>> RBS
>>
>>
>> -----Original Message-----
>> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
>> Sent: 02 February 2007 13:51
>> To: sqlite-users@sqlite.org
>> Subject: RE: [sqlite] How do I know sqlite_get_table is finished
>>
>> I'll admit I'm not much of a C expert, so I'd say Guy has a much better
>> handle on that part than I do.  As far as your code goes I only had one
>> thought, and forgive me if this is just my ignorance of VBA.  I didn't
>> see a
>> declaration for lReturnedRows anywhere.  If you don't declare a
>> variable,
>> what is the value of that variable if it's used before you explicitly
>> assign
>> a value?  The reason I ask is because you only assign a value to
>> lReturnedRows if the length of the error message is 0, and you only set
>> the
>> error flag if lReturnedRows = 0.  Do you need to do:
>>
>> If Len(strError) = 0 then
>> Else
>>   lReturnedRows = 0
>> End If
>>
>> Don't know if this would really make a difference, and sorry if it's
>> just a
>> waste of time, but I thought I'd suggest it.
>>
>> --
>> Eric Pankoke
>> Founder / Lead Developer
>> Point Of Light Software
>> http://www.polsoftware.com/
>>
>>  -------------- Original message ----------------------
>> From: [EMAIL PROTECTED]
>> > Thanks for looking at that.
>> > The crash can happen at the actual call to sqlite_get_table or it can
>> > happen when I assign the resulting array to the wrapper function, so
>> when
>> > I do: GetFromDB = arr
>> >
>> > Yes, I would be interested in making a boolean (optional) argument in
>> > sqlite_get_table that can leave out the field headers. I haven't tried
>> > to compile myself yet, but I do have VC6, so it should be OK.
>> >
>> > Still, I don't understand why this crashes.
>> >
>> > RBS
>> >
>> > > At 07:44 2/2/2007 +0000, you wrote:
>> > >>Sure, here it is:
>> > >
>> > > <snip>
>> > >
>> > > Looking at the C code published at
>> > > http://www.tannertech.net/sqlite3vb/index.htm , it seems very risky
>> -
>> > > there
>> > > are a lot of places it can fail to allocate memory (for example),
>> and
>> the
>> > > use of some variables looks like it could randomly crash at any
>> time...
>> > > but
>> > > I didn't test it, just looked at it.
>> > >
>> > > As far as I can understand the problem, it happens around this line:
>> > > arr = GetFromDB(strSQL, lRows, strError, lDBHandle, strDB)
>> > >
>> > > Are you seeing a crash on the actual call to sqlite_get_table or
>> only
>> > > after
>> > > it (when you try to use the results)?
>> > >
>> > > If you compiled the SQLite3VB.dll on your own, I can probably make
>> some
>> > > suggestions about fixing the C code of sqlite_get_table
>> implementation,
>> > > and
>> > > maybe even some improvments (for example, a boolean flag to allow
>> you to
>> > > request the results array without the column headers, which I
>> remember
>> you
>> > > asking about), and returning the number of rows immediately instead
>> of
>> in
>> > > another function (which is somewhat dangerous), etc.).
>> > > You should also probably consider using some kind of wrapper around
>> > > sqlite3_exec in addition to sqlite3_get_table so you will be able to
>> run
>> > > commands (like pragma) without going through sqlite_get_table.
>> > >
>> > >
>> > > Guy
>> > >
>> > >
>> > >
>> > >
>> ----------------------------------------------------------------------------
>> -
>> > > To unsubscribe, send email to [EMAIL PROTECTED]
>> > >
>> ----------------------------------------------------------------------------
>> -
>> > >
>> > >
>> > >
>> >
>> >
>> >
>> >
>> >
>> ----------------------------------------------------------------------------
>> -
>> > To unsubscribe, send email to [EMAIL PROTECTED]
>> >
>> ----------------------------------------------------------------------------
>> -
>> >
>>
>>
>> ----------------------------------------------------------------------------
>> -
>> To unsubscribe, send email to [EMAIL PROTECTED]
>> ----------------------------------------------------------------------------
>> -
>>
>>
>>
>>
>> -----------------------------------------------------------------------------
>> To unsubscribe, send email to [EMAIL PROTECTED]
>> -----------------------------------------------------------------------------
>>
>
>
> -----------------------------------------------------------------------------
> To unsubscribe, send email to [EMAIL PROTECTED]
> -----------------------------------------------------------------------------
>
>
>




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

Reply via email to