[DELPHI+MS ACCESS] blokowanie pól w tabeli

0

Witam !
Mam problem z bazą MS ACCESS Cała obsługa bazy jest zrobiona. Wszystko ma tranzakcje ale...
Te "ALE" tyczy się kiedy pracuje duża liczba użytkowników na bazie z różnych komputerów a chodzi tu o 4 Serwery z WIN2K (gdzie na każdym może być do 20 usersów) to bardzo często się zdarza , że user chce poprawić pole w tabeli a otrzymuje komunikat , że inny user ją edytuje lub zablokował. Oczywiście mija to po 5 - 30 min i wszystko wraca do normy a user może edytować.
Problem ponadto jest również taki , że wszyscy usersi to admin i komunikat wyskakuje , że user Admin z komputera o nazwie edytuje partie rekordów lub partia rekordów została usunięta.
Oczywiście w 99% jest to nieprawda. Praca grupowa jest dopuszczalna ale nawet mi to się zdarzyło, że wprowadzając nowy rekord (pusty) nie mogłem go edytować BZDURA !!!
Nie mam pojęcia o co chodzi. Dodam ponadto , że wchodząc do programu MS ACCESS i otwierając tą tabelę to samo pole w MSACCESS (program) wypisuje dokładnie ten sam komunikat co mój program.
Podejrzewam że problem leży w wielu Użytkownikach na Terminal Serwerze (Pulpit Zdalny).
Ale nie jestem o tym przekonany. I zanim zaczne coś grzebać w bazie muszę być pewny na 100% istniejącego błędu.
Dostęp mojej aplikacji do bazy MS ACCESSa odbywa się przez KDAO w wersji 9.

Mam nadzieje , że jasno opisałem problem i może są jacyś wyjadacze (eksperci) baz danych MSACCESS-owych i podpowiedzą co należy zrobić.

Z góry dzięki za pomoc.

0

4 serwery * 20 userów + MS Access = FATAL ERROR
Kto to wymyślił i dlaczego go jeszcze nie zwolnili z pracy?

może są jacyś wyjadacze (eksperci) baz danych MSACCESS-owych

Jeśli takie twory kiedykolwiek istniały to już na pewno dawno wymarły śmiercią naturalną.

0

popieram Darka, msaccess to baza desktopowa a nie CS i nie nadaje się do wielodostępu!

0

Hurra !!! Chłopaki jesteście super !!!
Czy tak czy siak to jednak to działa.

A pytanie brzmiało zupełnie inaczej :-) No ale cuż ...

Może jednak wiecie jak rozwiązać problem ?
Bo co do zwalniania to chciałbym zauważyć że jako tanie rozwiązanie firmy programistyczne proponują coś takiego. Bo jak , klient usłyszy , że ma postawić SQL Server i ile to kosztuje to już po kliencie a tak można zawsze coś zarobić i coś uzyskać co następnie przy większej liczbie USER-ów zaczyna szwankować.Ale tego klient nie mósi wiedzieć. Dopiero jak zaczyna pracować więcej USER-ów to zaczyna się problem. Średnio non stop pracuje 6userów*4serwery.
Szczytowo raz na jakiś czas dochodzi do 20 na server :-)

No ale to jest nieważne. Ważne jest jak rozwiązać ten problem ?

0

Pragne tylko zauwazyc, ze SQL Server to nie jest jedyna dobra baza na swiecie. Zeby tylko wspomniec dobre, darmowe bazy to MySQL i PostgreSQL. Jesli jednak nie za bardzo pasuje wam przepisywac to na normalna baze (wysoce wskazane chyba), to pozostaje poszukac w jaki sposob Access zaklada locki na tabele/wiersze/baze i czy mozna to jakkolwiek zmienic.

0

http://www.hostmysite.com/support/programming/locked-db/
http://support.microsoft.com/kb/208778
http://forums.hostmysite.com/about1065.html&highlight=
poczytaj może pomoże albo chociaż rozjaśni

BTW jak się na hura robi (kupuje) system to tak jest. A co do kosztów baz danych to może słyszałeś o takim wynalazku jak darmowe serwery lub darmowe wersje płatnych serwerów

Czy tak czy siak to jednak to działa.

jakby działało to by nie było pytania :)

0
johny_bravo napisał(a)

Pragne tylko zauwazyc, ze SQL Server to nie jest jedyna dobra baza na swiecie. Zeby tylko wspomniec dobre, darmowe bazy to MySQL i PostgreSQL. Jesli jednak nie za bardzo pasuje wam przepisywac to na normalna baze (wysoce wskazane chyba), to pozostaje poszukac w jaki sposob Access zaklada locki na tabele/wiersze/baze i czy mozna to jakkolwiek zmienic.

Oooo Super !

Czyli problem tkwi z zamyknięciem bazy ?
http://forums.hostmysite.com/about1065.html&highlight=
Najgorsze jest to , że migracja jest chyba niemożliwa z tytułu użytego komponentu KDAO czyli DAO a nie ADO ale mogę się mylić.

0

a z czego na co chcesz migrować bo z tego co zrozumiałem to interfejs do bazy też masz w accessie

0

W temacie jest, ze delphi, wiec moze nie bedzie tak zle...

0

To jest tak panowie.
Firma "x" pisze program na zamówienie robi szybkie i tanie rozwiązanie jest wdrożenie i niby działa daje kod źródłowy i sprawe zamyka. Jak się później okazuje niewiele ludzi z tego kożysta bo narzędzie jest Beee. I część RZeczy nie działa. Ale to nieważne. Kolesie używają jakiś cudownych kompnentów, które są płatne i na nic Ci źródła skoro niczego nie możesz poprawić. Sprytne rozwiązanie aby przywiązać klienta. Więc super postanowiłem jakby przepisać to coś używając standardowych komponentów w Delphi + to co kolesie wymysili KDAO. Narzędzie po poprawie się sprawdziło usersów jest 5x więcej i niestety MS ACCESS poległ. Idea piękna tylko ... Ponadto kolesie robią cudowne zapytania sqlowe ale accessowe , które ni jak mają się do jakiś standardów.
No ale to wszystko nie rozwiązuje problemu z jakim się borykam.
Inny problem to jest że access na jednym z 4 serverów (losowo) nie ma dostępu do pliku i pojawia się komunikat DISC OR NETWORK ERROR ale na 3 pozostałych serwerach jest ok. po prostu MICROSOFT ...
A program się wywala bo nie ma dostępu do bazy.
Telefony , że coś nie działa a ja mówię wyloguj się z tego servera i zaloguj się na inny.
Jeszcze szlak mnie trafia jak USER rozłącza sesję terminalową (pulpit zdalny) i nie zamyka programu a automat ubija nieaktywne (rozłączone) sesje po 3 godzinach.

Ale się wyżaliłem. :(

0

Moze jednak latwiej bedzie przepiac sie na normalna baze? Ostatecznie tych zapytan do bazy chyba nie jest miliony? Mialbys naprawde sporo problemow z glowy, a juz na pewno problemy klasycznie bazodanowe

0
johny_bravo napisał(a)

Moze jednak latwiej bedzie przepiac sie na normalna baze? Ostatecznie tych zapytan do bazy chyba nie jest miliony? Mialbys naprawde sporo problemow z glowy, a juz na pewno problemy klasycznie bazodanowe

Szczeże powiem , że mi się nie chce przepisywać i borykać się z kolejnymi nowymi problemami.
Może za jakiś czas najdzie mnie ochota.
Tak wygląda teraz program raczej jeden zrzut :
user image
user image

0

moja propozycja - przyjrzyj się dobrze umowie, jaka była z nimi podpisana. Jeśli w niej nie ma nic na temat
a) max ilość userów
b) max wielkość bazy
c) tylko praca lokalna
itp
c) albo był zapis w stylu umożliwia pracę na wielu stanowiskach jednocześnie
to muszą to naprawić, a jak nie chcą to postrasz sądem. Jak masz też zaprzyjaźnionego prawnika to poradź się go bo to ewidentnie spartolony system.
Jednak główną rolę odgrywa tu sama umowa i specyfikacja systemu

0
Misiekd napisał(a)

moja propozycja - przyjrzyj się dobrze umowie, jaka była z nimi podpisana. Jeśli w niej nie ma nic na temat
a) max ilość userów
b) max wielkość bazy
c) tylko praca lokalna
itp
c) albo był zapis w stylu umożliwia pracę na wielu stanowiskach jednocześnie
to muszą to naprawić, a jak nie chcą to postrasz sądem. Jak masz też zaprzyjaźnionego prawnika to poradź się go bo to ewidentnie spartolony system.
Jednak główną rolę odgrywa tu sama umowa i specyfikacja systemu

Niestety prezes , który był prezesem firmy ... podpisał , że nasza firma przyjmuje program wraz kodami i akceptuje działanie takie jakie jest . I prezesura się skończyła :)

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