Subject | Re: [firebird-support] Re: using Firebird mga from Access |
---|---|
Author | Kjell Rilbe |
Post date | 2011-05-31T04:56:32Z |
Den 2011-05-30 22:38 skrev heineferreira såhär:
you can benefit from it in various ways but you also get some downsides,
e.g. garbage collection/sweeps and inability to do fast index-only count
queries.
You just use the database as usual: update, insert, select... MGA is
just in internal technical solution used inside FB to provide record
locing, trasaction handling and good concurrency.
The result of MGA is that any number of transactions can read the same
record and one transaction can write to it without blocking any readers.
The only thing that causes a lock conflict is if two separate
transactions write to the same record.
For an Access app using a FB backend I'd say you've got it right: you
need to use a Fireird ADO or ODBC driver. There is a free ODBC driver
available from www.firebirdsql.org. I think there was a new major
release recently.
Kjell
--
--------------------------------------
Kjell Rilbe
DataDIA AB
E-post: kjell@...
Telefon: 08-761 06 55
Mobil: 0733-44 24 64
> Yes you are right I come from a SQL Server background.MGA isn't something you actively use - it's just there, inside FB. Sure,
> I have never used an MGA - therefore the strange questions.
> I might be wrong but in SQL Server you can have multiple read locks on a
> record but read locks block write locks and vice versa. Also you can
> only have one write lock. I don't think SQL Server got MGA features.
you can benefit from it in various ways but you also get some downsides,
e.g. garbage collection/sweeps and inability to do fast index-only count
queries.
You just use the database as usual: update, insert, select... MGA is
just in internal technical solution used inside FB to provide record
locing, trasaction handling and good concurrency.
The result of MGA is that any number of transactions can read the same
record and one transaction can write to it without blocking any readers.
The only thing that causes a lock conflict is if two separate
transactions write to the same record.
For an Access app using a FB backend I'd say you've got it right: you
need to use a Fireird ADO or ODBC driver. There is a free ODBC driver
available from www.firebirdsql.org. I think there was a new major
release recently.
Kjell
--
--------------------------------------
Kjell Rilbe
DataDIA AB
E-post: kjell@...
Telefon: 08-761 06 55
Mobil: 0733-44 24 64