Subject | Table locking with Delphi/IBObjects |
---|---|
Author | olgreyfox15 |
Post date | 2008-10-06T23:47:49Z |
I,m working on an application that uses Delphi7, IBObjects 4.6, and
Firebird 2.1. I can have multiple users simultaneously inserting
records to a table (AT_STATEMENT) from different PCs on the network. I
need to temporarily prevent User B from inserting until User A's
insert is completed & committed. Then User B's application needs to
check the data state before doing its insert. In absence of better
knowledge, I'm assuming this needs a table lock on AT_STATEMENT. If
so, what is the best way to do this? The way I'm doing it works only
in one specific instance, and seems to deadlock (or lock conflict) any
subsequent inserts/deletes from other places in the application (other
forms, other queries, etc.)
I know Delphi fairly well; but transaction processing is relatively
new to me.
Thanks in advance
Lane Campbell/OlGreyFox
Firebird 2.1. I can have multiple users simultaneously inserting
records to a table (AT_STATEMENT) from different PCs on the network. I
need to temporarily prevent User B from inserting until User A's
insert is completed & committed. Then User B's application needs to
check the data state before doing its insert. In absence of better
knowledge, I'm assuming this needs a table lock on AT_STATEMENT. If
so, what is the best way to do this? The way I'm doing it works only
in one specific instance, and seems to deadlock (or lock conflict) any
subsequent inserts/deletes from other places in the application (other
forms, other queries, etc.)
I know Delphi fairly well; but transaction processing is relatively
new to me.
Thanks in advance
Lane Campbell/OlGreyFox