LOCK TABLEæ–‡ã?«ã‚ˆã‚Šæ˜Žç¤ºçš„ã?«ã€?表ã?«å…±æœ‰ã?‚ã‚‹ã?„ã?¯æŽ’ä»–ã?®ãƒãƒƒã‚¯ã‚’ã?‹ã?‘ã‚‹ã?“ã?¨ã?Œã?§ã??ã?¾ã?™ã€‚ 表ã?¸ã?®ãƒãƒƒã‚¯ã?¯ç?¾åœ¨ã?®ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã?Œçµ‚了ã?™ã‚‹ã?¾ã?§ã?®é–“ã€?ç¶šã??ã?¾ã?™ã€‚
表をãƒãƒƒã‚¯ã?§ã??ã‚‹ã?®ã?¯ã€?データベースã?®æ‰€æœ‰è€…ã?¨è¡¨ã?®æ‰€æœ‰è€…ã?§ã?™ã€‚
ã?“ã?®æ–‡ã?§ã‚·ã‚¹ãƒ†ãƒ 表ã?«ãƒãƒƒã‚¯ã‚’ã?‹ã?‘ã‚‹ã?“ã?¨ã?¯ã?§ã??ã?¾ã?›ã‚“。
LOCK TABLE 表å?? IN { SHARE | EXCLUSIVE } MODE
ã?„ã?šã‚Œã?®ãƒ¢ãƒ¼ãƒ‰ã?§ã?‚ã?£ã?¦ã‚‚ã€?トランザクションã?¯è¡¨ã‚’ãƒãƒƒã‚¯ã?—ã?Ÿå¾Œã€?ã??れ以上ã?®è¡Œã?”ã?¨ã?®ãƒãƒƒã‚¯ã‚’å¾—ã‚‹ã?“ã?¨ã?¯ã?§ã??ã?¾ã?›ã‚“。例ã?ˆã?°ã€?æƒ…å ±ã‚’èªã‚€ã?Ÿã‚?ã?«ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã?ŒFlightsã?¨ã?„ã?†è¡¨ã?®å…¨ä½“を共有モードã?§ãƒãƒƒã‚¯ã?—ã?Ÿå¾Œã€?ã?‚ã‚‹æ–‡ã?«ã?¦è¡Œã‚’æ›´æ–°ã?™ã‚‹ã?Ÿã‚?ã?«ç‰¹å®šã?®è¡Œã?¸ã?®æŽ’ä»–ãƒãƒƒã‚¯ã‚’å¿…è¦?ã?¨ã?—ã?Ÿã?¨ã?—ã?¾ã?™ã€‚ã?—ã?‹ã?—ã?ªã?Œã‚‰ã€?æ—¢ã?«Flights表ã?¸ã?®ãƒãƒƒã‚¯ã?Œã?‚ã‚‹ã?Ÿã‚?ã€?排他ãƒãƒƒã‚¯ã‚‚表毎ã?¨ã?ªã‚‹å¿…è¦?ã?Œã?‚りã?¾ã?™ã€‚
ä»–ã?®æŽ¥ç¶šã?Œè¡¨ã?«å¯¾ã?—ã?¦æ—¢ã?«ãƒãƒƒã‚¯ã‚’ã?‹ã?‘ã?¦ã?„ã‚‹ã?Ÿã‚?ã€?ã??ã?®è¡¨ã?¸ã?®ãƒãƒƒã‚¯ã?Œå?–å¾—ã?§ã??ã?ªã?„å ´å?ˆã€?デッドãƒãƒƒã‚¯ã?®ã‚¿ã‚¤ãƒ アウト時間ã?ŒçµŒé?Žã?—ã?Ÿå¾Œã€?æ–‡ã?¸ã?®ä¾‹å¤–ã?Œç™ºç”Ÿã?—ã?¾ã?™ã€‚(SQLState X0X02)
LOCK TABLE Flights IN SHARE MODE; SELECT * FROM Flights WHERE orig_airport > 'OOO';
LOCK TABLE FlightAvailability IN EXCLUSIVE MODE; UPDATE FlightAvailability SET economy_seats_taken = (economy_seats_taken + 2) WHERE flight_id = 'AA1265' AND flight_date = DATE('2004-03-31'); UPDATE FlightAvailability SET economy_seats_taken = (economy_seats_taken + 2) WHERE flight_id = 'AA1265' AND flight_date = DATE('2004-04-11'); UPDATE FlightAvailability SET economy_seats_taken = (economy_seats_taken + 2) WHERE flight_id = 'AA1265' AND flight_date = DATE('2004-04-12'); UPDATE FlightAvailability SET economy_seats_taken = (economy_seats_taken + 2) WHERE flight_id = 'AA1265' AND flight_date = DATE('2004-04-15');
LOCK TABLE Maps IN EXCLUSIVE MODE; SELECT MAX(map_id) + 1 FROM Maps; -- INSERT INTO Maps . . .