Thanks for the prompt response.
 As I stated in my previous email, I used SQLight Designer to view the 
database, which application would you recommend to view my database? Please 
keep in mind that I am not able to purchase a program, so it needs to be a free 
trial or a freeware.
 On the other hand, as far as you can see, should the code I have shown open a 
database, create a table and then add data to the table?

 Thanks!

----- Original Message -----
From: Pavel Ivanov
Sent: 06/21/12 01:08 PM
To: General Discussion of SQLite Database
Subject: Re: [sqlite] C++ programming - int sqlite3_prepare_v2() question

 > Also, I have downloaded and installed 'SQLight Designer' and when opening 
 > the database file, I have just created, all that I can see is the words: 
 > SQLite format 3. Apparently you open your database file in some plain text 
 > editor instead of in something that understands what SQLite database is. 
 > Pavel On Thu, Jun 21, 2012 at 12:22 PM, Arbol One <arbol...@programmer.net> 
 > wrote: > namespace jme { > class Runner : public Gtk::Window { > private: > 
 > jme::Exception* e; // Exception handler > sqlite3 *db; // Data Base > 
 > sqlite3_stmt* stmt; // SQL statement > Glib::ustring dbName; // db name > 
 > Glib::ustring sName; // my name > Glib::ustring sAddress; // my address > 
 > Glib::ustring vfs; // MSWIN Identifier > int rc; // return code > int age; 
 > // my age > // SQL statement > Glib::ustring dbdata; > Glib::ustring 
 > create_table; > public: > Runner(); > ~Runner(); > void OpenDB(); > void 
 > CreateTable(); > void AddData(); > }; > } > void jme::Runner::CreateTable(){ 
 > > rc = sqlite3_prepare_v2( >
  db, /* Database handle */ > create_table.c_str() , /* SQL statement, UTF-8 
encoded */ > create_table.length(), /* Maximum length of zSql in bytes. */ > 
&stmt, /* OUT: Statement handle */ > NULL /* OUT: Pointer to unused portion of 
zSql */ > ); > if(rc != SQLITE_OK) { > sqlite3_close(db); > std::cout << "error 
prepare_v2: " << rc << std::endl; > exit(-2); > } > rc = sqlite3_step(stmt); > 
if(rc != SQLITE_DONE) { > sqlite3_close(db); > std::cout << "error 
sqlite3_step: " << rc << std::endl; > exit(-3); > } > sqlite3_finalize(stmt); > 
} > void jme::Runner::AddData(){ > rc = sqlite3_prepare_v2( > db, /* Database 
handle */ > dbdata.c_str() , /* SQL statement, UTF-8 encoded */ > 
dbdata.length(), /* Maximum length of zSql in bytes. */ > &stmt, /* OUT: 
Statement handle */ > NULL /* OUT: Pointer to unused portion of zSql */ > ); > 
if(rc != SQLITE_OK) { > .... > } > rc = sqlite3_step(stmt); > if(rc != 
SQLITE_DONE) { > .... > } > sqlite3_finalize(stmt); > } > void 
jme::Runner::OpenDB()
  { > rc = sqlite3_open_v2(dbName.c_str(), > &db, SQLITE_OPEN_READWRITE | 
SQLITE_OPEN_CREATE, > NULL); > if(rc != SQLITE_OK) { > .... > } > 
jme::Runner::Runner() { > dbName = "sqliteTest.sql"; > sName = "ArbolOne"; > 
sAddress = "1 Parkway Rd"; > vfs = "win32"; > age = 22; > dbdata = "INSERT INTO 
friend VALUES('Jamiil', '49 New Bridge', '49')"; > create_table = "CREATE TABLE 
friend (name TEXT, address TEXT, age INT)"; > try { > jme::gnu_io f; > 
f.deleteFile(dbName); > } catch(jme::Exception e) { > std::cout << e.what() << 
std::endl; > } > OpenDB(); > CreateTable(); > AddData(); > > } > 
jme::Runner::~Runner(){ > sqlite3_close(db); > cout << "Good bye!" << endl; > } 
> int main(int argc, char *argv[]) { > try { > Gtk::Main kit(argc, argv); > 
jme::Runner dbtest; > Gtk::Main::run(dbtest); > } catch(jme::Exception& x) { > 
x.Display(); > } > return 0; > } > This is what I have done so far, and 
following your advice I hade added 'sqlite3_finalize(stmt)' each time I am done 
with it. Al
 so, I have downloaded and installed 'SQLight Designer' and when opening the 
database file, I have just created, all that I can see is the words: SQLite 
format 3. > Come on you folk, you have more experience than me using SQLite, 
pich in!. What else do I need to do? > > TIA > > void 
jme::Runner::CreateTable(){ > rc = sqlite3_prepare_v2( > db, /* Database handle 
*/ > create_table.c_str() , /* SQL statement, UTF-8 encoded */ > 
create_table.length(), /* Maximum length of zSql in bytes. */ > &stmt, /* OUT: 
Statement handle */ > NULL /* OUT: Pointer to unused portion of zSql */ > ); > 
if(rc != SQLITE_OK) { > sqlite3_close(db); > std::cout << "error prepare_v2: " 
<< rc << std::endl; > exit(-2); > } > rc = sqlite3_step(stmt); > if(rc != 
SQLITE_DONE) { > sqlite3_close(db); > std::cout << "error sqlite3_step: " << rc 
<< std::endl; > exit(-3); > } > sqlite3_finalize(stmt); > } > 
_______________________________________________ > sqlite-users mailing list > 
sqlite-users@sqlite.org > http
 ://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users 
_______________________________________________ sqlite-users mailing list 
sqlite-users@sqlite.org 
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to