| PostgreSQL 8.3.3¹®¼ | ||||
|---|---|---|---|---|
| Prev | Fast Backward | Chapter 31. ECPG - C¾ð¾î¿¡ ÀÇÇÑ ¸ÅÀÔSQL | Fast Forward | Next |
¸ðµç SQL ¸í·ÉÀº, ¸ÅÀÔ SQL ¾îÇø®ÄÉÀ̼dz»¿¡¼ ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌÇÏ¿¡ ¿¹¸¦ ¸î°³ °¡¸®Åµ´Ï´Ù.
Å×À̺íÀ» ÀÛ¼ºÇÕ´Ï´Ù.
EXEC SQL CREATE TABLE foo (number integer, ascii char(16)); EXEC SQL CREATE UNIQUE INDEX num1 ON foo(number); EXEC SQL COMMIT;
ÇàÀ» »ðÀÔÇÕ´Ï´Ù.
EXEC SQL INSERT INTO foo (number, ascii) VALUES (9999, 'doodad'); EXEC SQL COMMIT;
ÇàÀ» »èÁ¦ÇÕ´Ï´Ù.
EXEC SQL DELETE FROM foo WHERE number = 9999; EXEC SQL COMMIT;
´ÜÀÏÇàÀ» ¼±ÅÃÇÕ´Ï´Ù.
EXEC SQL SELECT foo INTO :FooBar FROM table1 WHERE ascii = 'doodad';
Ä¿¼¸¦ »ç¿ëÇØ ¼±ÅÃÇÕ´Ï´Ù.
EXEC SQL DECLARE foo_bar CURSOR FOR
SELECT number, ascii FROM foo
ORDER BY ascii;
EXEC SQL OPEN foo_bar;
EXEC SQL FETCH foo_bar INTO :FooBar, DooDad;
...
EXEC SQL CLOSE foo_bar;
EXEC SQL COMMIT;
°»½ÅÇÕ´Ï´Ù.
EXEC SQL UPDATE foo
SET ascii = 'foobar'
WHERE number = 9999;
EXEC SQL COMMIT;
: something ¶ó´Â ÇüÅÂÀÇ Ç¥½Ã´Â È£½ºÆ® º¯¼öÀÔ´Ï´Ù. Áï, CÇÁ·Î±×·¥³»ÀÇ º¯¼ö¸¦ ÂüÁ¶ÇÏ´Â °ÍÀÔ´Ï´Ù. À̰Ϳ¡ ´ëÇØ¼´Â Section 31.6¿¡¼ ¼³¸íÇÕ´Ï´Ù.
±âº»°ª ¸ðµå¿¡¼, ¸í·É¹®Àº EXEC SQL COMMIT°¡ ¹ßÇàµÉ ¶§¿¡¸¸ Ä¿¹ÔµË´Ï´Ù. ¸ÅÀÔ SQL ÀÎÅÍÆäÀ̽º¿¡¼µµ, (libpqÀÇ Çൿ°ú ºñ½ÁÇÑ) Æ®·£Àè¼ÇÀÇ ÀÚµ¿ Ä¿¹ÔÀ» Áö¿øÇϰí ÀÖ½À´Ï´Ù. ÀÚµ¿ Ä¿¹ÔÀº, ecpg¸í·É(ÀÌÇϸ¦ ÂüÁ¶)ÀÇ -t¸í·É ¶óÀÎ ¿É¼Ç, ȤÀº, EXEC SQL SET AUTOCOMMIT TO ON¹®¿¡ ÀÇÇØ °¡´ÉÇÏ°Ô µË´Ï´Ù. ÀÚµ¿ Ä¿¹Ô ¸ðµå¿¡¼´Â, Äõ¸®°¡ ¸í½ÃÀûÀÎ Æ®·£Àè¼Ç ºí·ÏÀÇ ³»ºÎ¿¡ ÀÖ´Â °æ¿ì¸¦ Á¦¿ÜÇϰí, ¸ðµç Äõ¸®°¡ ÀÚµ¿ÀûÀ¸·Î Ä¿¹ÔµË´Ï´Ù. ÀÚµ¿ Ä¿¹Ô ¸ðµå´Â, EXEC SQL SET AUTOCOMMIT TO OFF¸¦ »ç¿ëÇØ ¸í½ÃÀûÀ¸·Î ¹«È¿·Î ÇÒ ¼ö ÀÖ½À´Ï´Ù.