Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[MySQL] select for update

0 views
Skip to first unread message

Toma

unread,
Oct 8, 2004, 8:42:50 AM10/8/04
to
Witam,
chce zabronic innym uzytkownikom robienia zapisu do tabeli i dlatego stosuje
select... fo update.
Z tym ze select * nie wchodzi w rachube poniewaz bedzie sie wykonywal b.
dlugo, ja natomiast potrzebuje zabroninia insertow i update'ow od innych
uzytkownikow na calej tabeli
Jak to zrobic w mysql?

Czy zastosowanie where ograniczajacego tego select for update rozwiaze
sprawe? czy taki select bedzie dziala na calej tabeli czy tylko na polach z
Where'a?

sorka ze zamieszalem ale chyba mozna zrozumiec?:)

pozd

Toma

Toma

unread,
Oct 8, 2004, 8:55:42 AM10/8/04
to
Użytkownik "Toma" <tom...@WYTNIJTOkrzyzaniak.neostrada.pl> napisał w
wiadomości news:ck6205$fii$1...@korweta.task.gda.pl...

no i wlasnie sie doczytalem ze select for update dziala tylko na ImmoDB..
jak to zrobic na standardowych MyISAM tabelach?


Toma

Marek Lewczuk

unread,
Oct 8, 2004, 8:57:33 AM10/8/04
to
Toma wrote:
> Witam,
> chce zabronic innym uzytkownikom robienia zapisu do tabeli i dlatego
> stosuje select... fo update.
> Z tym ze select * nie wchodzi w rachube poniewaz bedzie sie wykonywal b.
> dlugo, ja natomiast potrzebuje zabroninia insertow i update'ow od innych
> uzytkownikow na calej tabeli
> Jak to zrobic w mysql?
>
> Czy zastosowanie where ograniczajacego tego select for update rozwiaze
> sprawe? czy taki select bedzie dziala na calej tabeli czy tylko na
> polach z Where'a?
Jeżeli zastosujesz polecenie FOR UPDATE to wszystkie rekordy (wiersze)
zwrócone zostaną zablokowane do update'a.

---"A SELECT ... FOR UPDATE reads the latest available data, setting
exclusive locks on each row it reads. Thus it sets the same locks a
searched SQL UPDATE would set on the rows."

Ale jak chcesz zablokować updaty i inserty na całej tablicy to po co
SELECT FOR UPDATE ??? Lepiej załóż LOCK TABLE na tablicę i tyle...

Generalnie polecam poczytać dokumentację - a raczej od tego zacząć:
http://dev.mysql.com/doc/mysql/en/LOCK_TABLES.html

Toma

unread,
Oct 12, 2004, 4:41:38 AM10/12/04
to
Użytkownik "Toma" <tom...@WYTNIJTOkrzyzaniak.neostrada.pl> napisał w
wiadomości news:ck62o9$j4e$1...@korweta.task.gda.pl...

hmm czy nikt nie odpowie???:)

Toma

0 new messages