PostgreSQL, nefunkcni priklad v dokumentaci k LOCK

root root na stehule.fsv.cvut.cz
Úterý Březen 5 12:14:14 CET 2002


Zdravim

Listoval jsem si dokumentaci k postgresu 7.2 a u prikazu LOCK jsem narazil
na priklad ze ktereho jsem jelen.

BEGIN WORK;
LOCK TABLE films IN SHARE MODE;
SELECT id FROM films 
    WHERE name = 'Star Wars: Episode I - The Phantom Menace';
-- Do ROLLBACK if record was not returned
INSERT INTO films_user_comments VALUES 
    (_id_, 'GREAT! I was waiting for it for so long!');
COMMIT WORK;
   
1. Prazdny select prece neprovede rollback.
2. co znamena _id_. Vyznam chapu, nicmene postgres naprosto logicky hlasi
neznamy atribut.

Je tento priklad jen nastinenim pouziti prikazu LOCK nebo se jedna o funkcni
priklad? Jeste pridam dotaz, jak nejlepe v postgresu resit tuto situaci.
Vedel bych o reseni v pl/pgsql, ale to nemam na mysli. V MSQL mohu udelat

  SELECT @id = id FROM ...
  INSERT INTO tab(id,hodnota) VALUES(@id, ...).

Lze toto provest nejak postgresu (bez funkce)? Priklad z dokumentace by
naznacoval, ze ano. 

Preji prijemny den
Pavel Stehule
stehule na kix.fsv.cvut.cz 



Další informace o konferenci Databases