ÀÀ¿ëÇÁ·Î±×·¥ °³¹ß ¾È³»¼­


REXX¿¡¼­ È£½ºÆ® º¯¼ö

È£½ºÆ® º¯¼ö´Â SQL¹®¿¡¼­ ÂüÁ¶µÇ´Â REXX ¾ð¾î º¯¼öÀÔ´Ï´Ù. ÀÌ·± º¯¼ö¸¦ »ç¿ëÇÏ¿© ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ DB2·Î ÀÔ·Â µ¥ÀÌÅ͸¦ Àü´ÞÇϰí DB2¿¡¼­ Ãâ·Â µ¥ÀÌÅ͸¦ ¼ö½ÅÇÒ ¼ö ÀÖ½À´Ï´Ù. LOB À§Ä¡ ÁöÁ¤ÀÚ ¹× LOB ÆÄÀÏ ÂüÁ¶ º¯¼ö¸¦ Á¦¿ÜÇϸé REXX ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ È£½ºÆ® º¯¼ö¸¦ ¼±¾ðÇÒ Çʿ䰡 ¾ø½À´Ï´Ù. È£½ºÆ® º¯¼ö µ¥ÀÌÅÍ À¯Çü ¹× Å©±â´Â º¯¼ö°¡ ÂüÁ¶µÇ´Â ·±Å¸ÀÓ¿¡ °áÁ¤µË´Ï´Ù. È£½ºÆ® º¯¼ö¸¦ ¸í¸íÇÏ°í »ç¿ëÇÒ ¶§ ´ÙÀ½ ±ÔÄ¢À» Àû¿ëÇϽʽÿÀ.

REXX¿¡¼­ È£½ºÆ® º¯¼ö ¸í¸í

ÀûÀýÈ÷ ¸í¸íµÈ REXX º¯¼ö¸¦ È£½ºÆ® º¯¼ö·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. º¯¼ö À̸§ÀÇ ±æÀÌ´Â 64ÀÚ±îÁö °¡´ÉÇÕ´Ï´Ù. ¸¶Ä§Ç¥·Î À̸§À» Á¾·áÇÏÁö ¸¶½Ê½Ã¿À. È£½ºÆ® º¯¼ö À̸§Àº ¾ËÆÄ¸ä ¹®ÀÚ, ¼ýÀÚ ¹× @, _, !, ., ?, $ µîÀÇ ¹®ÀÚ·Î ±¸¼ºµÉ ¼ö ÀÖ½À´Ï´Ù.

REXX¿¡¼­ È£½ºÆ® º¯¼ö Á¶È¸

REXX ÀÎÅÍÇÁ¸®ÅͰ¡ ÇÁ·Î½Ãµà¾î¿¡¼­ ÀÎ¿ë ºÎÈ£°¡ ¾ø´Â ¸ðµç ¹®ÀÚ¿­À» °Ë»çÇÕ´Ï´Ù. ¹®ÀÚ¿­ÀÌ ÇöÀç REXX º¯¼ö Ç®ÀÇ º¯¼ö¸¦ Ç¥½ÃÇϸé REXX¿¡¼­ ¹®ÀÚ¿­À» ÇöÀç °ªÀ¸·Î ´ëüÇÕ´Ï´Ù. ´ÙÀ½Àº REXX¿¡¼­ È£½ºÆ® º¯¼ö¸¦ ÂüÁ¶ÇÏ´Â ¹æ¹ýÀÇ ÇÑ ¿¹ÀÔ´Ï´Ù.

     CALL SQLEXEC 'FETCH C1 INTO :cm'
     SAY 'Commission = ' cm

¹®ÀÚ¿­ÀÌ ¼ýÀÚ µ¥ÀÌÅÍ À¯ÇüÀ¸·Î º¯È¯µÇÁö ¾Ê°Ô ÇÏ·Á¸é ´ÙÀ½ ¿¹¿¡¼­¿Í °°ÀÌ ¹®ÀÚ¿­À» ´ÜÀÏ ÀÎ¿ë ºÎÈ£·Î ´ÝÀ¸½Ê½Ã¿À.

     VAR = '100'

REXX¿¡¼­´Â VAR º¯¼ö¸¦ 3 ¹ÙÀÌÆ® ¹®ÀÚ¿­ 100À¸·Î ¼³Á¤ÇÕ´Ï´Ù. ´ÜÀÏ ÀÎ¿ë ºÎÈ£¸¦ ¹®ÀÚ¿­ÀÇ ÀϺηΠÆ÷ÇÔ½ÃŰ·Á´Â °æ¿ì ´ÙÀ½ ¿¹¸¦ µû¸£½Ê½Ã¿À.

     VAR = "'100'"

CHARACTER Çʵ忡 ¼ýÀÚ µ¥ÀÌÅ͸¦ »ðÀÔÇϸé REXX ÀÎÅÍÇÁ¸®ÅÍ¿¡¼­ ¼ýÀÚ µ¥ÀÌÅ͸¦ Á¤¼ö·Î ó¸®ÇϹǷΠ¼ýÀÚ ¹®ÀÚ¿­À» ¸í½ÃÀûÀ¸·Î ¿¬°áÇÏ°í ´ÜÀÏ ÀÎ¿ë ºÎÈ£·Î ´Ý¾Æ¾ß ÇÕ´Ï´Ù.

REXXÀÇ Ç¥½Ã±â º¯¼ö

REXXÀÇ Ç¥½Ã±â º¯¼ö µ¥ÀÌÅÍ À¯ÇüÀº ¼Ò¼öÁ¡ÀÌ ¾ø´Â ¼ýÀÚÀÔ´Ï´Ù. ´ÙÀ½Àº INDICATOR Ű¿öµå¸¦ »ç¿ëÇÏ´Â REXXÀÇ Ç¥½Ã±â º¯¼öÀÇ ¿¹ÀÔ´Ï´Ù.

     CALL SQLEXEC 'FETCH C1 INTO :cm INDICATOR :cmind'
     IF ( cmind < 0 )
        SAY 'Commission is NULL'

À§ÀÇ ¿¹¿¡¼­ cmindÀÇ °ªÀÌ À½¼öÀÎÁö °Ë»çÇÕ´Ï´Ù. À½¼ö°¡ ¾Æ´Ò °æ¿ì ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ cmÀÇ ¸®ÅÏµÈ °ªÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. À½¼öÀÏ °æ¿ì °¡Á®¿Â °ªÀº ³Î(NULL)À̹ǷΠcmÀ» »ç¿ëÇØ¼± ¾ÈµË´Ï´Ù. ÀÌ °æ¿ì µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥¿¡¼­´Â È£½ºÆ® º¯¼öÀÇ °ªÀ» º¯°æÇÏÁö ¾Ê½À´Ï´Ù.

»çÀü Á¤ÀÇµÈ REXX º¯¼ö

SQLEXEC, SQLDBS ¹× SQLDB2´Â »çÀü Á¤ÀÇµÈ REXX º¯¼ö¸¦ ƯÁ¤ Á¶ÀÛÀÇ °á°ú·Î ¼³Á¤ÇÕ´Ï´Ù. ÀÌ·± º¯¼ö´Â ´ÙÀ½°ú °°½À´Ï´Ù.

RESULT
°¢ Á¶ÀÛÀº ÀÌ ¸®ÅÏ Äڵ带 ¼³Á¤ÇÕ´Ï´Ù. °¡´ÉÇÑ °ªÀº ´ÙÀ½°ú °°½À´Ï´Ù.
n
¿©±â¼­ nÀº Çü½ÄÈ­µÈ ¸Þ½ÃÁöÀÇ ¹ÙÀÌÆ® ¼ö¸¦ Áö½ÃÇÏ´Â ¾çÀÇ °ªÀÔ´Ï´Ù. GET ERROR MESSAGE API¿¡¼­¸¸ ÀÌ °ªÀ» ¸®ÅÏÇÕ´Ï´Ù.
0
API°¡ ½ÇÇàµÇ¾ú½À´Ï´Ù. REXX º¯¼ö SQLCA´Â APIÀÇ ¿ÏÀüÇÑ »óŸ¦ Æ÷ÇÔÇÕ´Ï´Ù. SQLCA.SQLCODE°¡ 0ÀÌ ¾Æ´Ò °æ¿ì SQLMSG¿¡´Â ±× °ª°ú ¿¬°üµÈ ÅØ½ºÆ® ¸Þ½ÃÁö°¡ ÀÖ½À´Ï´Ù.
-1
API¸¦ ¿Ï·áÇÏ´Â µ¥ »ç¿ë °¡´ÉÇÑ ¸Þ¸ð¸®°¡ ÃæºÐÇÏÁö ¾Ê½À´Ï´Ù. ¿äûµÈ ¸Þ½ÃÁö°¡ ¸®ÅϵÇÁö ¾Ê¾Ò½À´Ï´Ù.
-2
SQLCA.SQLCODE°¡ 0À¸·Î ¼³Á¤µË´Ï´Ù. ¸Þ½ÃÁö°¡ ¸®ÅϵÇÁö ¾Ê¾Ò½À´Ï´Ù.
-3
SQLCA.SQLCODE¿¡ À¯È¿ÇÏÁö ¾ÊÀº SQLCODE°¡ ÀÖ¾ú½À´Ï´Ù. ¸Þ½ÃÁö°¡ ¸®ÅϵÇÁö ¾Ê¾Ò½À´Ï´Ù.
-6
SQLCA REXX º¯¼ö¸¦ ºôµåÇÒ ¼ö ¾ø½À´Ï´Ù. Áï, »ç¿ë °¡´ÉÇÑ ¸Þ¸ð¸®°¡ ÃæºÐÇÏÁö ¾Ê°Å³ª ¾î¶² ÀÌÀ¯·Î REXX º¯¼ö Ç®À» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
-7
SQLMSG REXX º¯¼ö¸¦ ºôµåÇÒ ¼ö ¾ø½À´Ï´Ù. Áï, »ç¿ë °¡´ÉÇÑ ¸Þ¸ð¸®°¡ ÃæºÐÇÏÁö ¾Ê°Å³ª ¾î¶² ÀÌÀ¯·Î REXX º¯¼ö Ç®À» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
-8
REXX º¯¼ö Ç®¿¡¼­ SQLCA.SQLCODE REXX º¯¼ö¸¦ °¡Á®¿Ã ¼ö ¾ø½À´Ï´Ù.
-9
°¡Á®¿À´Â Áß SQLCA.SQLCODE REXX º¯¼ö°¡ Àý´ÜµÇ¾ú½À´Ï´Ù. ÀÌ º¯¼öÀÇ ÃÖ´ë ±æÀÌ´Â 5 ¹ÙÀÌÆ®ÀÔ´Ï´Ù.
-10
SQLCA.SQLCODE REXX º¯¼ö¸¦ ASCII¿¡¼­ À¯È¿ÇÑ long Á¤¼ö·Î º¯È¯ÇÒ ¼ö ¾ø½À´Ï´Ù.
-11
REXX º¯¼ö Ç®¿¡¼­ SQLCA.SQLERRML REXX º¯¼ö¸¦ °¡Á®¿Ã ¼ö ¾ø½À´Ï´Ù.
-12
°¡Á®¿À´Â Áß SQLCA.SQLERRML REXX º¯¼ö°¡ Àý´ÜµÇ¾ú½À´Ï´Ù. ÀÌ º¯¼öÀÇ ÃÖ´ë ±æÀÌ´Â 2 ¹ÙÀÌÆ®ÀÔ´Ï´Ù.
-13
SQLCA.SQLERRML REXX º¯¼ö¸¦ ASCII¿¡¼­ À¯È¿ÇÑ short Á¤¼ö·Î º¯È¯ÇÒ ¼ö ¾ø½À´Ï´Ù.
-14
REXX º¯¼ö Ç®¿¡¼­ SQLCA.SQLERRMC REXX º¯¼ö¸¦ °¡Á®¿Ã ¼ö ¾ø½À´Ï´Ù.
-15
°¡Á®¿À´Â Áß SQLCA.SQLERRMC REXX º¯¼ö°¡ Àý´ÜµÇ¾ú½À´Ï´Ù. ÀÌ º¯¼öÀÇ ÃÖ´ë ±æÀÌ´Â 70 ¹ÙÀÌÆ®ÀÔ´Ï´Ù.
-16
¿À·ù ÅØ½ºÆ®¿ëÀ¸·Î ÁöÁ¤µÈ REXX º¯¼ö¸¦ ¼³Á¤ÇÒ ¼ö ¾ø½À´Ï´Ù.
-17
REXX º¯¼ö Ç®¿¡¼­ SQLCA.SQLSTATE REXX º¯¼ö¸¦ °¡Á®¿Ã ¼ö ¾ø½À´Ï´Ù.
-18
°¡Á®¿À´Â Áß SQLCA.SQLSTATE REXX º¯¼ö°¡ Àý´ÜµÇ¾ú½À´Ï´Ù. ÀÌ º¯¼öÀÇ ÃÖ´ë ±æÀÌ´Â 2 ¹ÙÀÌÆ®ÀÔ´Ï´Ù.

ÁÖ:GET ERROR MESSAGE API¿¡¼­¸¸ -8 - -18 »çÀÌÀÇ °ªÀ» ¸®ÅÏÇÕ´Ï´Ù.

SQLMSG
SQLCA.SQLCODE°¡ 0ÀÌ ¾Æ´Ò °æ¿ì ÀÌ º¯¼ö¿¡´Â ¿À·ù ÄÚµå¿Í ¿¬°üµÈ ÅØ½ºÆ® ¸Þ½ÃÁö°¡ ÀÖ½À´Ï´Ù.

SQLISL
ºÐ¸® ·¹º§. °¡´ÉÇÑ °ªÀº ´ÙÀ½°ú °°½À´Ï´Ù.
RR
¹Ýº¹ Àбâ(RR)
RS
Àб⠾ÈÁ¤¼º(RS)
CS
Ä¿¼­ ¾ÈÁ¤¼º(CS). ±âº»°ªÀÔ´Ï´Ù.
UR
¹ÌÈ®¾à Àбâ(UR)
NC
È®¾àÇÏÁö ¾Ê½À´Ï´Ù.(ÀϺΠȣ½ºÆ® ¶Ç´Â AS/400 ¼­¹ö¿¡¼­¸¸ NC¸¦ Áö¿øÇÕ´Ï´Ù.)

SQLCA
SQL¹® ÀÌÈÄ¿¡ °»½ÅµÈ SQLCA ±¸Á¶°¡ 󸮵ǰí DB2 API°¡ È£ÃâµË´Ï´Ù. ÀÌ ±¸Á¶ÀÇ Ç׸ñÀº Administrative API Reference¿¡ ¼³¸íµÇ¾î ÀÖ½À´Ï´Ù.

SQLRODA
CALL¹®À» »ç¿ëÇÏ¿© È£ÃâµÈ ÀúÀå ÇÁ·Î½Ãµà¾îÀÇ ÀÔ·Â/Ãâ·Â SQLDA ±¸Á¶. ¶ÇÇÑ µ¥ÀÌÅͺ£À̽º ÀÀ¿ëÇÁ·Î±×·¥ ¿ø°Ý ÀÎÅÍÆäÀ̽º(DARI) API¸¦ »ç¿ëÇÏ¿© È£ÃâµÈ ÀúÀå ÇÁ·Î½Ãµà¾îÀÇ Ãâ·Â SQLDA ±¸Á¶À̱⵵ ÇÕ´Ï´Ù. ÀÌ ±¸Á¶ÀÇ Ç׸ñÀº Administrative API Reference¿¡ ¼³¸íµÇ¾î ÀÖ½À´Ï´Ù.

SQLRIDA
µ¥ÀÌÅͺ£À̽º ÀÀ¿ëÇÁ·Î±×·¥ ¿ø°Ý ÀÎÅÍÆäÀ̽º(DARI) API¸¦ »ç¿ëÇÏ¿© È£ÃâµÈ ÀúÀå ÇÁ·Î½Ãµà¾îÀÇ ÀÔ·Â SQLDA ±¸Á¶ÀÔ´Ï´Ù. ÀÌ ±¸Á¶ÀÇ Ç׸ñÀº Administrative API Reference¿¡ ¼³¸íµÇ¾î ÀÖ½À´Ï´Ù.

SQLRDAT
µ¥ÀÌÅͺ£À̽º ÀÀ¿ëÇÁ·Î±×·¥ ¿ø°Ý ÀÎÅÍÆäÀ̽º(DARI) API¸¦ »ç¿ëÇÏ¿© È£ÃâµÈ ¼­¹ö ÇÁ·Î½Ãµà¾îÀÇ SQLCHAR ±¸Á¶ÀÔ´Ï´Ù. ÀÌ ±¸Á¶ÀÇ Ç׸ñÀº Administrative API Reference¿¡ ¼³¸íµÇ¾î ÀÖ½À´Ï´Ù.

REXXÀÇ LOB È£½ºÆ® º¯¼ö

LOB Ä÷³À» REXX È£½ºÆ® º¯¼ö·Î °¡Á®¿À¸é ÀÌ´Â ´Ü¼ø(Áï, uncounted) ¹®ÀÚ¿­·Î ÀúÀåµË´Ï´Ù. ÀÌ´Â CHAR, VARCHAR, GRAPHIC, LONG µî°ú °°Àº ¸ðµç ¹®ÀÚ ±â¹Ý SQL À¯ÇüÀÇ °æ¿ì¿Í °°Àº ¹æ½ÄÀ¸·Î Á¶ÀýµË´Ï´Ù. ÀԷ½à ȣ½ºÆ® º¯¼ö ³»¿ëÀÇ Å©±â°¡ 32Kº¸´Ù Å©°Å³ª ¾Æ·¡ ¼³Á¤µÈ ´Ù¸¥ ±âÁØÀ» ¸¸Á·½Ãų °æ¿ì ÇØ´ç LOB À¯ÇüÀ¸·Î ÇÒ´çµË´Ï´Ù.

REXX SQL¿¡¼­ LOB À¯ÇüÀº ¾Æ·¡¿Í °°ÀÌ È£½ºÆ® º¯¼öÀÇ ¹®ÀÚ¿­ ³»¿ë¿¡ µû¶ó °áÁ¤µË´Ï´Ù.
È£½ºÆ® º¯¼ö ¹®ÀÚ¿­ ³»¿ë °á°ú LOB À¯Çü

:hv1='32Kº¸´Ù ±ä ÀÏ¹Ý ÀÎ¿ë ºÎÈ£·Î ´ÝÈù ¹®ÀÚ¿­ ...'

CLOB

:hv2="'ÀÎ¿ë ºÎÈ£ ºÐ¸®°¡ EmbeddedµÈ ¹®ÀÚ¿­ ",
"32Kº¸´Ù ±ä...'"

CLOB

:hv3="¹®ÀÚ¿­ ºÐ¸®°¡ EmbeddedµÈ G'DBCS ¹®ÀÚ¿­ ",
"ÀÎ¿ë ºÎÈ£, G·Î ½ÃÀÛ, 32Kº¸´Ù ±ä ¹®ÀÚ¿­...'"

DBCLOB

:hv4="¹®ÀÚ¿­ ºÐ¸®°¡ EmbeddedµÈ BIN'¹®ÀÚ¿­ ",
"ÀÎ¿ë ºÎÈ£, BINÀ¸·Î ½ÃÀÛ,ÀÓÀÇ ±æÀÌ...'"

BLOB

REXX¿¡¼­ LOB À§Ä¡ ÁöÁ¤ÀÚ ¼±¾ð

REXX¿¡¼­ LOB À§Ä¡ ÁöÁ¤ÀÚ È£½ºÆ® º¯¼öÀÇ ±¸¹®Àº REXX¿¡¼­ LOB À§Ä¡ ÁöÁ¤ÀÚ È£½ºÆ® º¯¼ö¸¦ ¼±¾ðÇÏ´Â ±¸¹®À» ³ªÅ¸³À´Ï´Ù.

REXX¿¡¼­ LOB À§Ä¡ ÁöÁ¤ÀÚ È£½ºÆ® º¯¼öÀÇ ±¸¹®
 
            .-,-------------------.
            V                     |
>>-DECLARE-----:--variable-name---+---LANGUAGE TYPE--+-BLOB---+---LOCATOR-->
                                                     +-CLOB---+
                                                     '-DBCLOB-'
 
>--------------------------------------------------------------><
 

ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ LOB À§Ä¡ ÁöÁ¤ÀÚ È£½ºÆ® º¯¼ö¸¦ ¼±¾ðÇØ¾ß ÇÕ´Ï´Ù. REXX/SQL¿¡¼­ ÀÌ·± ¼±¾ðÀ» ¹ß°ßÇÏ¸é ¼±¾ðµÈ È£½ºÆ® º¯¼ö¸¦ ³ª¸ÓÁö ÇÁ·Î±×·¥ÀÇ À§Ä¡ ÁöÁ¤ÀڷΠó¸®ÇÕ´Ï´Ù. À§Ä¡ ÁöÁ¤ÀÚ °ªÀº REXX º¯¼ö¿¡ ³»ºÎ Çü½ÄÀ¸·Î ÀúÀåµË´Ï´Ù.

¿¹¸¦ µé¸é ´ÙÀ½°ú °°½À´Ï´Ù.

     CALL SQLEXEC 'DECLARE :hv1, :hv2 LANGUAGE TYPE CLOB LOCATOR'

¿£Áø¿¡¼­ ¸®ÅÏµÈ LOB À§Ä¡ ÁöÁ¤ÀÚ°¡ Ç¥½ÃÇÏ´Â µ¥ÀÌÅÍ´Â ´ÙÀ½°ú °°Àº Çü½ÄÀÇ FREE LOCATOR¹®À» »ç¿ëÇÏ¿© REXX/SQL¿¡¼­ ÇØÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù.

FREE LOCATOR¹®¿¡ ´ëÇÑ ±¸¹®
 
                  .-,-------------------.
                  V                     |
>>-FREE--LOCATOR-----:--variable-name---+----------------------><
 

¿¹¸¦ µé¸é ´ÙÀ½°ú °°½À´Ï´Ù.

     CALL SQLEXEC 'FREE LOCATOR :hv1, :hv2'

REXX¿¡¼­ LOB ÆÄÀÏ ÂüÁ¶ ¼±¾ð

ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ LOB ÆÄÀÏ ÂüÁ¶ È£½ºÆ® º¯¼ö¸¦ ¼±¾ðÇØ¾ß ÇÕ´Ï´Ù. REXX/SQL¿¡¼­ ÀÌ·± ¼±¾ðÀ» ¹ß°ßÇÏ¸é ¼±¾ðµÈ È£½ºÆ® º¯¼ö¸¦ ³ª¸ÓÁö ÇÁ·Î±×·¥ÀÇ LOB ÆÄÀÏ ÂüÁ¶·Î ó¸®ÇÕ´Ï´Ù.

REXX¿¡¼­ LOB ÆÄÀÏ ÂüÁ¶ º¯¼öÀÇ ±¸¹®Àº REXX¿¡¼­ LOB ÆÄÀÏ ÂüÁ¶ È£½ºÆ® º¯¼ö¸¦ ¼±¾ðÇÏ´Â ±¸¹®À» ³ªÅ¸³À´Ï´Ù.

REXX ÆÄÀÏ ÂüÁ¶ ¼±¾ð
 
            .-,-------------------.
            V                     |
>>-DECLARE-----:--variable-name---+---LANGUAGE TYPE--+-BLOB---+---FILE-->
                                                     +-CLOB---+
                                                     '-DBCLOB-'
 
>--------------------------------------------------------------><
 

¿¹¸¦ µé¸é ´ÙÀ½°ú °°½À´Ï´Ù.

     CALL SQLEXEC 'DECLARE :hv3, :hv4 LANGUAGE TYPE CLOB FILE'

REXXÀÇ ÆÄÀÏ ÂüÁ¶ º¯¼ö¿¡´Â ¼¼ Çʵ尡 ÀÖ½À´Ï´Ù. À§ÀÇ ¿¹ÀÇ °æ¿ì ´ÙÀ½°ú °°½À´Ï´Ù.

hv3.FILE_OPTIONS.
ÆÄÀÏ »ç¿ë ¹æ¹ýÀ» Áö½ÃÇϵµ·Ï ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ ¼³Á¤ÇÕ´Ï´Ù.
hv3.DATA_LENGTH.
ÆÄÀÏ Å©±â¸¦ Áö½ÃÇϵµ·Ï DB2¿¡¼­ ¼³Á¤ÇÕ´Ï´Ù.
hv3.NAME.
LOB ÆÄÀÏÀÇ À̸§À» Áö½ÃÇϵµ·Ï ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ ¼³Á¤ÇÕ´Ï´Ù.

FILE_OPTIONS¿¡ ´ëÇØ ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­´Â ´ÙÀ½°ú °°Àº Ű¿öµå¸¦ ¼³Á¤ÇÕ´Ï´Ù.

Ű¿öµå(Á¤¼ö °ª)
ÀǹÌ
READ (2)
ÀԷ¿¡ »ç¿ëÇÒ ÆÄÀÏ. ÀÌ ÆÄÀÏÀº ¿­°í, Àаí, ´ÝÀ» ¼ö ÀÖ´Â ÀÏ¹Ý ÆÄÀÏÀÔ´Ï´Ù. ÆÄÀÏÀÇ µ¥ÀÌÅÍ ±æÀÌ(¹ÙÀÌÆ® ´ÜÀ§)´Â ÆÄÀÏÀ» ¿­ ¶§ °è»êµË´Ï´Ù(ÀÀ¿ëÇÁ·Î±×·¥ ¿äûÀÚ Äڵ忡 µû¶ó).
CREATE (8)
Ãâ·Â½Ã, »õ·Î¿î ÆÄÀÏÀ» ÀÛ¼ºÇÕ´Ï´Ù. ÆÄÀÏÀÌ ÀÌ¹Ì ÀÖÀ¸¸é ¿À·ù°¡ ¹ß»ýÇÕ´Ï´Ù. ÆÄÀÏÀÇ ±æÀÌ(¹ÙÀÌÆ® ´ÜÀ§)´Â ÆÄÀÏ ÂüÁ¶ º¯¼ö ±¸Á¶ÀÇ DATA_LENGTH Çʵ忡 ¸®Åϵ˴ϴÙ.
OVERWRITE (16)
Ãâ·Â½Ã ±âÁ¸ ÆÄÀÏÀÌ ÀÖ´Â °æ¿ì ±âÁ¸ ÆÄÀÏÀº °ãÃľ²¿©Áö°í, ±×·¸Áö ¾ÊÀº °æ¿ì »õ·Î¿î ÆÄÀÏÀÌ ÀÛ¼ºµË´Ï´Ù. ÆÄÀÏÀÇ ±æÀÌ(¹ÙÀÌÆ® ´ÜÀ§)´Â ÆÄÀÏ ÂüÁ¶ º¯¼ö ±¸Á¶ÀÇ DATA_LENGTH Çʵ忡 ¸®Åϵ˴ϴÙ.
APPEND (32)
Ãâ·ÂÀº ÆÄÀÏÀÌ ÀÖ´Â °æ¿ì ±× ÆÄÀÏ¿¡ Ãß°¡µÇ°í, ±×·¸Áö ¾ÊÀº °æ¿ì »õ·Î¿î ÆÄÀÏÀÌ ÀÛ¼ºµË´Ï´Ù. Àüü ÆÄÀÏ ±æÀ̰¡ ¾Æ´Ñ ÆÄÀÏ¿¡ Ãß°¡µÇ´Â µ¥ÀÌÅÍ ±æÀÌ(¹ÙÀÌÆ® ´ÜÀ§)´Â ÆÄÀÏ ÂüÁ¶ º¯¼ö ±¸Á¶ÀÇ DATA_LENGTH Çʵ忡 ¸®Åϵ˴ϴÙ.
ÁÖ:ÆÄÀÏ ÂüÁ¶ È£½ºÆ® º¯¼ö´Â REXXÀÇ È¥ÇÕ º¯¼öÀ̹ǷΠNAME, NAME_LENGTH ¹× FILE_OPTIONS Çʵ带 ¼±¾ðÇÒ »Ó ¾Æ´Ï¶ó ÇØ´ç ÇʵåÀÇ °ªµµ ¼³Á¤ÇØ¾ß ÇÕ´Ï´Ù.

REXX¿¡¼­ LOB È£½ºÆ® º¯¼ö Áö¿ò

OS/2ÀÇ °æ¿ì REXX SQL LOB À§Ä¡ ÁöÁ¤ÀÚ¿Í ÆÄÀÏ ÂüÁ¶ È£½ºÆ® º¯¼ö ¼±¾ðÀ» ±×´ë·Î µÎ¸é ÀÀ¿ëÇÁ·Î±×·¥ Á¾·á ÈÄ¿¡ ¿µÇâÀ» ¹ÌÄ¡¹Ç·Î ¸í½ÃÀûÀ¸·Î Áö¿ö¾ß ÇÒ °æ¿ì°¡ ÀÖ½À´Ï´Ù. ÀÀ¿ëÇÁ·Î±×·¥ÀÌ ¼öÇà ÁßÀÎ ¼¼¼ÇÀ» ´Ý±â Àü±îÁö ÀÀ¿ëÇÁ·Î±×·¥ ÇÁ·Î¼¼½º°¡ ³ª°¡Áö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. REXX SQL LOB ¼±¾ðÀ» Áö¿ìÁö ¾ÊÀ¸¸é LOB ÀÀ¿ëÇÁ·Î±×·¥ ½ÇÇà ÈÄ µ¿ÀÏ ¼¼¼Ç¿¡¼­ ¼öÇà ÁßÀÎ ´Ù¸¥ ÀÀ¿ëÇÁ·Î±×·¥°ú »óÈ£ÀÛ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

¼±¾ðÀ» Áö¿ì´Â ±¸¹®Àº ´ÙÀ½°ú °°½À´Ï´Ù.

     CALL SQLEXEC "CLEAR SQL VARIABLE DECLARATIONS"

LOB ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ³¡¿¡¼­ ÀÌ ¸í·É¹®À» ÄÚµùÇØ¾ß ÇÕ´Ï´Ù. ÀÌÀü ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ ³²°åÀ» ¼ö ÀÖ´Â ¼±¾ðÀ» Áö¿ì´Â ¿¹¹æÃ¥À¸·Î, REXX SQL ÀÀ¿ëÇÁ·Î±×·¥ ½ÃÀÛ½Ã¿Í °°Àº ¾î´À À§Ä¡¿¡¼­µç ¸í·É¹®À» ÄÚµùÇÒ ¼ö ÀÖ´Ù´Â Á¡¿¡ ÁÖÀÇÇϽʽÿÀ.


[ ÆäÀÌÁöÀÇ ¸Ç À§ | ÀÌÀü ÆäÀÌÁö | ´ÙÀ½ ÆäÀÌÁö | ¸ñÂ÷ | »öÀÎ ]