Hello nshaw,

        std::string m_sSQL = "CREATE TABLE IF NOT EXISTS ";
        m_sSQL += g_pszTableName;
        m_sSQL += "(" ;
        m_sSQL +=               "AR_Filename            TEXT PRIMARY KEY," ;
        m_sSQL +=               "AR_Subject             TEXT ," ;
        m_sSQL +=               "AR_From                TEXT ," ;
        m_sSQL +=               "AR_Group               TEXT ," ;
        m_sSQL +=               "AR_GoodBlocks          INTEGER" ;
        m_sSQL += ");" ;

        HRESULT hr = Exec
        (
                m_sSQL.c_str()
        );

        //
        // Paramaterized insert with values bound later
        //
        std::string m_sSQL = "INSERT OR IGNORE INTO ";
        m_sSQL += g_pszTableName;
        m_sSQL += " VALUES (?,?,?,?,?,?,?);";

        
        std::string m_sSQL = "insert into family (member,age) values ";
        m_sSQL += "(" ;
        m_sSQL +=          name;
        m_sSQL +=          "," ;
        m_sSQL +=          "age" ;
        m_sSQL += ");" ;

        
if you want to do straight C you need something like a sprintf or use
SQLite's printf routines. I build everything in a C++ string then pass
is using the ".c_str()" operator. I recommend parameterized inserts
too.

C

Monday, April 9, 2007, 12:59:27 PM, you wrote:

n> Help!

n> I've done everything I can think of to pass arguments to SQLite and nothing
n> is working.  If anyone has information on how to do it, I'd appreciate it.
n> Here's a code segment:

n> #include <iostream>
n> #include <stdio.h>                              
n> #include <stdlib.h>
n> #include "util.h"                               
n> #include <sqlite3.h>

n> using namespace std;

n> int main (int argc, char **argv)
n> {
n>     sqlite3 *db;                // --- database                   

n>     char *zErr;                                 
n>     int return_code;                                    
n>     char *sql;

n>     // ----- variables for database input ---------------
n>     char name[30];
n>     int age;

n>     // ----- create or open the database ----------------
n>     return_code = sqlite3_open("Family.db", &db);       

n>     // ----- error creating or opening the database ----- 
n>     if (return_code) {
n>         fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
n>         sqlite3_close(db);      // --- close database
n>         exit(1);
n>     }

n>     // ----- enter data into local variables ------
n>     cout << "Enter name: "; cin.getline (name, 30);
n>     cout << "Enter age: "; cin >> age;

n>     // ----- enter a record into the database -----
n>     sql = "insert into family (member,age) values (name, age)";  // --------
n> HERE'S WHERE COMPILE BUSTS


n> The error is that no column exists called 'age.'  I've tried passing name
n> and age as pointers, as references, I've tried declaring them as pointers,
n> etc. and nothing can be passed.  If I pass absolute arguments ("Nick", 30)
n> it works.

n> Again, I appreciate any and all help!
n> Regards,

n> Nick.



-- 
Best regards,
 Teg                            mailto:[EMAIL PROTECTED]


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

Reply via email to