On 11/04/2011 09:25 AM, Steve Teale wrote:
I don't think you need to worry about changes while stepping through rows.
That's questionable. Consider Stock Market quotes. Some lib designers, for instance. libpgxx (C++ PostgreSQL) have a different view.. let me quote : *With conventional database APIs, you issue commands and queries to a database session or connection, and optionally create the occasional transaction. In libpqxx you start with a connection, but you do all your SQL work in transactions that you open in your connection. You commit each transaction when it's complete; if you don't, all changes made inside the transaction get rolled back.*
However, there are always many ways to skin a cat. PostgreSQL, Firebird, MSSQL Server (not sure about MySQL) enable you to trigger server side events. Means the database server fires an update event (say employee deleted event) and a D function living in a secondary thread will catch this event and inform all interested parties (subscribers**) to refresh their RowSet. (and of course the UI)
Beside, this is the way we create mission critical,db-centric realtime apps. works fine.
My 2 cents. Bjoern ** Publisher/Subscriber pattern.