On 9/9/06, Lloyd Thomas <[EMAIL PROTECTED]> wrote:
I know nothing of C++ and therefore need a lilte help editing a C++ app to
insert some records into a database.

here's an example to read from a database.
If you build the sql like you're doing and you use it on the web you
leave yourself
open to sql injection attacks. Using the bind() method eliminates that
vulnerability.
Something to consider.

Jay


Here's some example code:

sqlite3*        db;

// connect to database
if ( sqlite3_open( "test.db", &db ) )
 throw "Can't open database";

char* sql;

sql = "SELECT one.test1, two.test2"
    " FROM one"
    " INNER JOIN two ON one.id = two.id"
    ;
sqlite3_stmt*   pStmt;

if ( sqlite3_prepare( db, sql, strlen(sql), &pStmt, NULL ) != SQLITE_OK )
 {
    string str = "Cannot prepare sql: ";
    str += sql[t];
    str += ", Error: ";
    str += sqlite3_errmsg(db);
    throw str.c_str();
 }

bool Loop = true;
while ( Loop )
 switch ( sqlite3_step( pStmt ) )
    {
       case SQLITE_ROW:
          // retrieve the results
          char* p = (char *) sqlite3_column_text( pStmt, 0 );
          string test1  = string( p ? p : "" );

          p = (char *) sqlite3_column_text( pStmt, 1 );
          string test2 = string( p ? p : "" );

          break;
       case SQLITE_DONE:
          Loop = false;
          break;
       case SQLITE_BUSY:
       case SQLITE_LOCKED:
       default:
          string str = "Cannot execute sql: ";
          str += sql[t];
          str += ", Error: ";
          str += sqlite3_errmsg(db);
          throw str.c_str();
          break;
    }

// clean up when finished
sqlite3_finalize( pStmt );

sqlite3_close( db );



--
SqliteImporter and SqliteReplicator: Command line utilities for Sqlite
http://www.reddawn.net/~jsprenkl/Sqlite

Cthulhu Bucks!
http://www.cthulhubucks.com

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

Reply via email to