Subject Re: generate report for POS
Author Adam
--- In, bill_lam <bill_lam@...> wrote:
> Adam wrote:
> > For your report, simply start a snapshot transaction (not sure how
> > this is done in your environment, but if you post details someone will
> > know). Then just issue your select statement, and it will not see
> > changes made subsequent to the transaction start. There are lots of
> > options depending on what you are doing, and many scenarios that can
> > be encountered, too many for a single post.
> >
> In ODBC, it uses four transaction isolation levels (as defined by
> Read uncommitted
> Read committed
> Repeatable read
> Serializable
> SQLServer and MySQL ODBC support all 4 levels.
> Firebird suport all except the first.
> SNAPSHOT or versoning isolation levels are not mentioned in ODBC.


Not sure where the terms came from, but remember that Firebird's
predecessor predates SQL92, so it would not surprise me if the terms
are slightly different.

The document I posted before mentions the way the levels are in Firebird.

You may also want to check the documentation of your particular
Firebird ODBC driver to see what maps to what.

> FYI, you are discouraged to issue a "SET TRANSACTION" sql command
within ODBC,
> because transactions must be managed using ODBC api. But I'll try to
see if it
> works.
> BTW, is SNAPSHOT (transaction not cursor) available in other FB
middleware like
> jaybird or netprovider?

I believe these interfaces do surface all the available isolation
levels. I am not sure of exactly how each implements it, however there
are lists dedicated to them. Follow the links from the main to the lists and subscribe.

Btw, a quick google found this: