Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 22.09.2003 Ostrzeżenie: (0%)
|
Mam pytanko jak zrobic selecta, i przy edycji zeby inny user nie mogl wejsc na ten sam rekord w tym czasie
(blokada przed jednoczesna edycja przez dwie osoby) |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 22.09.2003 Ostrzeżenie: (0%)
|
Cytat Cytat a po to ze jak osoba edytuje np 10 min to inna nie moze wejsc w tym czasie i zacząć edytować
Ja bym tego nie polecał zwłaszcza w aplikacjach WWW. Co jak edytującemu wysypie się przeglądarka, albo tak jak pisałeś pójdzie na kawę? Nikt nie może przedytować tego rekordu aż do wygaśnięcia sesji. Ja bym się wkurzył gdybym dostał komunikat, że wiersz jest zablokowany przez kogoś, kto zapomniał o tym że miał zapisać zmiany i poszedł do domu. :wink: Można to zrobić dodając do tej tabeli pole edited w której umieszaczne by było id usera który edytuje wiersz (albo NULL gdy nie jest edytowany). Pobranie do edycji wyglądało by tak: [sql:1:3a117605f2]update tabela set edited='uid' where edited is null and id='costam' [/sql:1:3a117605f2]Po tym zapytaniu, jeśli ilość zmodyfikowanych wierszy (DBMS powinien zwracać takie coś) jest > 0 wiersz jest traktowany jak zablokowany i przejęty do edycji. Jeśli ta ilośc jest równa 0 to wiersz jest aktualnie edytowany przez kogoś innego. Po zapisie, należałoby go odblokować przez: [sql:1:3a117605f2]update tabela set edited=null where edited='uid' and id='costam'[/sql:1:3a117605f2] taki motyw wykorzystywalem do tej pory, ale programuje duzo w Oracle i tan jest to mozliwe do sprawdzenia bez problemu, po prostu sue blokuje rekord i jak inny user chce wejsc i zalokowac dla siebie to mu sie nie udaje, a teraz musze zrobic aplikacje pod Access z baza w Mysql i niestety musze chyba robic z jakims znacznikiem |
|
|
|
stysiek update 26.09.2003, 16:00:54
Jabol transakcje ...
poczytaj w manualach ( w zależności... 26.09.2003, 16:07:31
KaMeLeOn Re: update 26.09.2003, 16:12:14
stysiek A jak sprawdzić czy rekord jest zablokowany przez ... 26.09.2003, 16:53:51
Jabol nie da sie. jezeli jest zablokowona to baza poczek... 26.09.2003, 16:56:46
KaMeLeOn CytatA jak sprawdzić czy rekord jest zablokowany p... 26.09.2003, 16:56:54
Jabol CytatCytatA jak sprawdzić czy rekord jest zablokow... 26.09.2003, 16:58:46
stysiek mysle ze sie da.
bynajmniej w Oracle sie da.
a po... 26.09.2003, 17:41:16
Jabol 8O 8O 10min !!! ? po co tyle czasu ? Chyba, nie e... 26.09.2003, 17:49:50
stysiek Cytat8O 8O 10min !!! ? po co tyle czasu ? Chyba, ... 26.09.2003, 17:53:56
Jabol jezeli zostawia bez commita to nic się nie stanie ... 26.09.2003, 18:00:58
adwol Cytata po to ze jak osoba edytuje np 10 min to inn... 26.09.2003, 18:09:49
stysiek Wszystko sie zgadza ale nie moga dwie osoby na raz... 26.09.2003, 18:11:00
adwol Cytata teraz musze zrobic aplikacje pod Access z b... 26.09.2003, 18:30:44 ![]() ![]() |
|
Aktualny czas: 25.12.2025 - 05:39 |