m_parametercount=0;\r
m_resultcolumncount=0;\r
m_rowreturned=false;\r
+ m_lastinsertrowid=-1;\r
}\r
\r
Statement::Statement(sqlite3_stmt *statement)\r
m_parametercount=sqlite3_bind_parameter_count(m_statement);\r
m_resultcolumncount=sqlite3_column_count(m_statement);\r
m_rowreturned=false;\r
+ m_lastinsertrowid=-1;\r
\r
if(m_statement)\r
{\r
m_parametercount=0;\r
m_resultcolumncount=0;\r
m_rowreturned=false;\r
+ m_lastinsertrowid=-1;\r
*this=rhs;\r
}\r
\r
}\r
}\r
*/\r
+\r
}\r
\r
const bool Statement::Bind(const int column)\r
if(Valid() && column>=0 && column<m_parametercount)\r
{\r
//ZThread::Guard<ZThread::Mutex> g(DB::instance()->m_mutex);\r
- PThread::Guard g(DB::Instance()->m_mutex);\r
+ //PThread::Guard g(DB::Instance()->m_mutex);\r
if(sqlite3_bind_null(m_statement,column+1)==SQLITE_OK)\r
{\r
return true;\r
if(Valid() && column>=0 && column<m_parametercount)\r
{\r
//ZThread::Guard<ZThread::Mutex> g(DB::instance()->m_mutex);\r
- PThread::Guard g(DB::Instance()->m_mutex);\r
+ //PThread::Guard g(DB::Instance()->m_mutex);\r
if(sqlite3_bind_int(m_statement,column+1,value)==SQLITE_OK)\r
{\r
return true;\r
if(Valid() && column>=0 && column<m_parametercount)\r
{\r
//ZThread::Guard<ZThread::Mutex> g(DB::instance()->m_mutex);\r
- PThread::Guard g(DB::Instance()->m_mutex);\r
+ //PThread::Guard g(DB::Instance()->m_mutex);\r
if(sqlite3_bind_double(m_statement,column+1,value)==SQLITE_OK)\r
{\r
return true;\r
{\r
if(Valid() && column>=0 && column<m_parametercount)\r
{\r
- //char *text=new char[value.size()+1];\r
- //strncpy(text,value.c_str(),value.size());\r
- //text[value.size()]=NULL;\r
- //textptrs.push_back(text);\r
- \r
//ZThread::Guard<ZThread::Mutex> g(DB::instance()->m_mutex);\r
- PThread::Guard g(DB::Instance()->m_mutex);\r
- m_boundtext.push_back(std::vector<char>(value.begin(),value.end()));\r
- //if(sqlite3_bind_text(m_statement,column+1,text,value.size(),NULL)==SQLITE_OK)\r
- if(sqlite3_bind_text(m_statement,column+1,&m_boundtext[m_boundtext.size()-1][0],m_boundtext[m_boundtext.size()-1].size(),NULL)==SQLITE_OK) \r
+ //PThread::Guard g(DB::Instance()->m_mutex);\r
+ if(sqlite3_bind_text(m_statement,column+1,value.c_str(),value.size(),SQLITE_TRANSIENT)==SQLITE_OK)\r
{\r
return true;\r
}\r
if(Valid() && column>=0 && column<m_parametercount)\r
{\r
//ZThread::Guard<ZThread::Mutex> g(DB::instance()->m_mutex);\r
- PThread::Guard g(DB::Instance()->m_mutex);\r
- if(sqlite3_bind_blob(m_statement,column+1,data,length,NULL)==SQLITE_OK)\r
+ //PThread::Guard g(DB::Instance()->m_mutex);\r
+ if(sqlite3_bind_blob(m_statement,column+1,data,length,SQLITE_TRANSIENT)==SQLITE_OK)\r
{\r
return true;\r
}\r
if(Valid() && column>=0 && column<m_resultcolumncount)\r
{\r
//ZThread::Guard<ZThread::Mutex> g(DB::instance()->m_mutex);\r
- PThread::Guard g(DB::Instance()->m_mutex);\r
+ //PThread::Guard g(DB::Instance()->m_mutex);\r
data=(void *)sqlite3_column_blob(m_statement,column);\r
length=sqlite3_column_bytes(m_statement,column);\r
return true;\r
if(Valid() && column>=0 && column<m_resultcolumncount)\r
{\r
//ZThread::Guard<ZThread::Mutex> g(DB::instance()->m_mutex);\r
- PThread::Guard g(DB::Instance()->m_mutex);\r
+ //PThread::Guard g(DB::Instance()->m_mutex);\r
result=sqlite3_column_double(m_statement,column);\r
return true;\r
}\r
if(Valid() && column>=0 && column<m_resultcolumncount)\r
{\r
//ZThread::Guard<ZThread::Mutex> g(DB::instance()->m_mutex);\r
- PThread::Guard g(DB::Instance()->m_mutex);\r
+ //PThread::Guard g(DB::Instance()->m_mutex);\r
result=sqlite3_column_int(m_statement,column);\r
return true;\r
}\r
if(Valid() && column>=0 && column<m_resultcolumncount)\r
{\r
//ZThread::Guard<ZThread::Mutex> g(DB::instance()->m_mutex);\r
- PThread::Guard g(DB::Instance()->m_mutex);\r
+ //PThread::Guard g(DB::Instance()->m_mutex);\r
if(sqlite3_column_type(m_statement,column)==SQLITE_NULL)\r
{\r
return true;\r
if(Valid() && column>=0 && column<m_resultcolumncount)\r
{\r
//ZThread::Guard<ZThread::Mutex> g(DB::instance()->m_mutex);\r
- PThread::Guard g(DB::Instance()->m_mutex);\r
+ //PThread::Guard g(DB::Instance()->m_mutex);\r
const unsigned char *cresult=sqlite3_column_text(m_statement,column);\r
if(cresult)\r
{\r