[Typo fix] Thanks for the help
Though, I am not quite clear on how to get the FIFO aspect of it. Assuming three tables: task_log => (id, task_data, time_stamp) task_fifo = > (id, fk_task_log) task_status_log => (id, fk_task_log, status_code, time_stamp) How do I create the correct stored procedures / triggers to make this work? (Or, is this even the correct approach?) Thank you, :) > > > ----- Original Message ---- > > From: Christopher Taylor > > To: General Discussion of SQLite Database > > Sent: Monday, May 18, 2009 11:42:16 AM > > Subject: Re: [sqlite] Sqlite as a FIFO buffer? > > > > I took a slightly different approach and used a trigger. This is the create > > table function from my event log class. The string handler is proprietary > > but other than that there should be enough there to give you an idea. > > > > void DbEventLog::CreateTable(sqlite3* pDatabase) > > { > > // create the table and insert the record > > char* db_err; > > CmnNarrowString createQuery = "create table tbl_EventLog ("; > > createQuery += "m_key integer primary key autoincrement, "; > > createQuery += "m_eventCode integer, "; > > createQuery += "m_timestamp integer, "; > > createQuery += ");"; > > int rc = sqlite3_exec(pDatabase, createQuery.c_str(), NULL, 0, &db_err); > > if ( rc != SQLITE_OK ) > > { > > // TODO - log error > > } > > else > > { > > // create the index on the unique id used for queries from ics > > createQuery = "create index idx_EventLog on tbl_EventLog (m_key)"; > > rc = sqlite3_exec(pDatabase, createQuery.c_str(), NULL, 0, &db_err); > > if ( rc != SQLITE_OK ) > > { > > // TODO - log error > > } > > else > > { > > createQuery = "create trigger trg_EventLog after insert on > > tbl_EventLog begin delete from tbl_EventLog where m_key <= (SELECT > > max(m_key) FROM tbl_EventLog) - 4000; end;"; > > rc = sqlite3_exec(pDatabase, createQuery.c_str(), NULL, 0, > > &db_err); > > if ( rc != SQLITE_OK ) > > { > > // TODO - log the error > > } > > } > > } > > } > > _______________________________________________ > > 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