![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 5.04.2007 Skąd: Jarocin Ostrzeżenie: (0%) ![]() ![]() |
Witam
W kodzie mam działanie w danym momencie na kilku tabelach (kilkanaście i więcej zapytań), które muszą być wykonane w danym momencie i inny użytkownik nie może w trakcie działania skryptu (PHP) na nich pracować (poza pobieraniem danych) - jest to bardzo ważne. Wykorzystuję PDO i transakcje. Czy to wystarczy? Czy dodatkowo zastosować LOCK TABLE? Wiem, że zablokowanie tabeli da nam jakby 'pustą drogę' i zapytania wykonają się szybciej. Także rozważam dodanie tego do kodu. Ale czy jest to wymagane? Co się też stanie, jeżeli kod się, z jakiegoś powodu, wysypie w jakimś momencie, i nie wykonam UNLOCK na tabeli / tabelach? Czy zostaną automatycznie odblokowane po wykonaniu skryptu? Pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 5.04.2007 Skąd: Jarocin Ostrzeżenie: (0%) ![]() ![]() |
Witam
Tak też u mnie się dzieje. Dane są 'obrabiane' w obrębie jedenej tabeli (wiele rekordów) oraz kilku innych. Generalnie zakładam sytuację, że operuję na kilku tabelach na wielu danych (czyli 1 i więcej z danej tabeli), i nie może to być przerwane ani zmienione w trakcie operacji. To czy powinienem zastosować LT czy jest to opcjonalne - przypomnę, korzystam z transakcji (ale ponieważ mam wątpliwości, stąd moje pytanie). Pozdrawiam! Ten post edytował Master Pain 12.01.2010, 10:04:39 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 15:09 |