2 komp. bazodanowe na 1 tablicy

0

czy majac np komponent TTable z przypisana jedna tablica np tablica.db, ktora jest ciagle otwarta oraz majac drugi komponent TQuery z ktorego korzystam raz kiedys ale na tej samej tablicy co uzwa ja TTable (tablica.db) moze to powodowac jakis wyjatek AC?

ostatnio mialem problem z prosta aplikacja, ktora miala ciagle jakis AC ale od czasu jak zrezygnowalem z TQuery tzn z procedury ktora wykorzystywala otwarta tablice i komponent TQuery (opisane wyzej) jak reka odjal nie ma tego probelmu - dlatego pytam czy taka sytuacja opisana na poczatku postu moze byc prawda. Jezeli tak to jak rozwiazac taka sytuacje gdzie jest potrzeba uzywania jednej tablicy przez wiecej niz jeden komponent

0

Jak ci powoduje AV, a musisz obsłużyć tablicę więcej niż jednym komponentem, to nie możesz trzymać tablicy cały czas otwartej, lecz otwierać ją tylko do wykonania jakiejś modyfikacji. Jeśli robisz to w wątkach, to nie zapomnij o Synchronize().

0

mysle ze rozwiazalem problem.
prawdopodobnie AV byl skutkiem metody obiektu typu TQuery o nazwie ExecSQL zamienilem to po prostu na metode Open

zrobilem tak bo wyczytalem gdzies ze do selectow uzywac lepiej Opena do pozstalych czyli insert, update itd to ExecSQL

czy to moglo byc przyczna - bo na razie sie nie wywala i mam nadzieje ze to nie nastapi :)

pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1