Thanks Richard,
 
Ah, I see. Well I did use those functions in the ODBC driver to make writing a 
blob work. However, my
current problem is reading the blob. As long as there is no null bytes it 
works. But I'm very unsure of the
calling sequence. Ok, say I got a table:
 
create table T_GENERICDATA (ID INTEGER, DATA BLOB);
 
and I want to get to a row by select:
 
select ID,DATA from T_GENERICDATA where ID=(?)
 
Now the ? will be replaced by %Q by the ODBC driver (sqlite3_vmprintf), so the 
resulting SQL string 
put into sqlite3_prepare will be 'select ID, DATA from T_GENERICDATA where 
ID='1' ' (if ID param was 1). 
Ok so far so good. Then what? Should I call sqlite3_step or 
sqlite3_column_blob... ?
 
Eh.. pretty confused...
 
TIA
/Rob
 
-----Original Message----- 
From: D. Richard Hipp [mailto:[EMAIL PROTECTED] 
Sent: Thu 2/24/2005 3:19 PM 
To: sqlite-users@sqlite.org 
Cc: 
Subject: Re: [sqlite] BLOB problem



        On Thu, 2005-02-24 at 15:05 +0100, Bielik, Robert wrote:
        > Hmmm... what is this? When using sqlite3_get_table it goes through 
sqlite3_exec which extracts
        > values from columns with sqlite3_column_text (!!!). What about blobs? 
A blob can actually contain
        > a number of null bytes! What is the recommended procedure to extract 
a blob if sqlite3_exec doesn't cut it??
        >
        
        sqlite3_get_table() and sqlite3_exec() are legacy APIs in place to
        support
        older programs.  They are not recommended for new code.  Use instead:
        
           sqlite3_prepare()
           sqlite3_step()
           sqlite3_finalize()
        
        
        

Reply via email to