Köszönöm mindenkinek az építő hozzászólásokat, végül csak összehoztuk a kérdésre a választ.<br><br>A select for update nowait megoldás hátránya, hogy csak tranzakción belül működik. Ha a működési logika időközben commit-ot követel, akkor nem működik.<br>
<br>Egy kicsit több adminisztrációval jár István megoldása, de működik tranzakciókon keresztül is. Bár a lock feloldása nem automatikus, annak tulajdonosa (megfelelő azonosító választása esetén) könnyen megtudható, és így eldönthető, hogy mi legyen a további sorsa.<br clear="all">
<br>Üdv:<br><b>Vig Balázs<br></b><br><br>
<br><br><div class="gmail_quote">2012. szeptember 14. 13:47 Keresztes Jozsef írta, <span dir="ltr">&lt;<a href="mailto:jkeresztes@vati.hu" target="_blank">jkeresztes@vati.hu</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div link="blue" vlink="purple" lang="HU"><div><pre style="line-height:13.5pt;background:#fafafa">Lock ellenőrzés: <span style>SELECT … FROM … WHERE … FOR UPDATE OF … NOWAIT;<u></u><u></u></span></pre><pre style="line-height:13.5pt;background:#fafafa">
<span style><u></u> <u></u></span></pre><pre style="line-height:13.5pt;background:#fafafa"><span style>Itt a lényeg a NOWAIT-en van, ami nem vár lock-olt rekord esetén hanem exception váltódik ki, azt meg tudod kezelni.<u></u><u></u></span></pre>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"><u></u> <u></u></span></p>
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> Vig, Balázs [mailto:<a href="mailto:balazs.vig@datasolutions.hu" target="_blank">balazs.vig@datasolutions.hu</a>] <br>
<b>Sent:</b> Friday, September 14, 2012 1:43 PM</span></p><div class="im"><br><b>To:</b> Java lista<br><b>Subject:</b> Re: [Javalist] Adatbázis lock<u></u><u></u></div><p></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal" style="margin-bottom:12.0pt">
Kösz, ezt is ismertem. De ez is csak feltartja a másik klienst, nem pedig &quot;elutasítja&quot;. És nem tudom ellenőrizni sem, hogy van-e lock.<br clear="all"><br>Üdv:<br><b>Vig Balázs<br></b><br><br><br><br><u></u><u></u></p>
<div><div class="h5"><div><p class="MsoNormal">2012. szeptember 14. 13:35 írta, &lt;<a href="mailto:aszomor@szomor.hu" target="_blank">aszomor@szomor.hu</a>&gt;:<u></u><u></u></p><p class="MsoNormal" style="margin-bottom:12.0pt">
Idézet (&quot;Vig, Balázs&quot; &lt;<a href="mailto:balazs.vig@datasolutions.hu" target="_blank">balazs.vig@datasolutions.hu</a>&gt;):<u></u><u></u></p><div><div><p class="MsoNormal">Sziasztok!<br><br>Van egy Hibernate alapú kliensem, ami több példányban is futhat. A kliens<br>
feladata, hogy az adatbázis objektumokon műveleteket végezzen.<br>Hogyan lehet azt garantálni, hogy egy objektummal csak az egyik kliens<br>foglalkozhasson: ha az egyik már elkezdett dolgozni rajta, akkor másik már<br>ne tudjon.<br>
<br>Támogatja-e ezt valahogy a hibernate, vagy a jdbc? (eddig nem találtam erre<br>semmit). Vagy nekem kell valami mókolnom az adatbázisban?<br><br>Üdv:<u></u><u></u></p></div></div><p class="MsoNormal" style="margin-bottom:12.0pt">
*Vig Balázs<br>*<u></u><u></u></p><p class="MsoNormal"><br>The Select For Update statement allows you to lock the records in the cursor result set. You are not required to make changes to the records in order to use this statement. The record locks are released when the next commit or rollback statement is issued.<br>
<br>Nem minden adatbázis kezelő támogatja ez JDBC-vel jó lehet.<u></u><u></u></p><div><div><p class="MsoNormal"><br><br><br><br>_______________________________________________<br>Javalist mailing list<br><a href="mailto:Javalist@lists.javaforum.hu" target="_blank">Javalist@lists.javaforum.hu</a><br>
<a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><u></u><u></u></p></div></div></div><p class="MsoNormal"><u></u> <u></u></p></div></div>
</div></div><br>_______________________________________________<br>
Javalist mailing list<br>
<a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a><br>
<a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
<br></blockquote></div><br>