»çÀü Á¤ÀÇµÈ Æ¯Á¤ COBOL µ¥ÀÌÅÍ À¯ÇüÀº Ä÷³ À¯Çü¿¡ ÇØ´çÇÕ´Ï´Ù. ÀÌ·± COBOL µ¥ÀÌÅÍ À¯ÇüÀº È£½ºÆ® º¯¼ö·Î ¼±¾ðÇÒ ¼ö ÀÖ½À´Ï´Ù.
Ç¥ 33Àº °¢ Ä÷³ À¯Çü¿¡ ÇØ´çÇÏ´Â COBOL µ¥ÀÌÅÍ À¯ÇüÀ» ³ªÅ¸³À´Ï´Ù. »çÀü ó¸® ÄÄÆÄÀÏ·¯¿¡¼ È£½ºÆ® º¯¼ö ¼±¾ðÀ» ãÀ¸¸é ÇØ´ç SQL À¯Çü °ªÀ» ÆÇº°ÇÕ´Ï´Ù. µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥¿¡¼ ÀÌ °ªÀ» »ç¿ëÇÏ¿© ÀÀ¿ëÇÁ·Î±×·¥°ú ÀÚü¿¡¼ ±³È¯µÈ µ¥ÀÌÅ͸¦ º¯È¯ÇÕ´Ï´Ù.
È£½ºÆ® º¯¼ö¿¡ ´ëÇÑ °¡´ÉÇÑ µ¥ÀÌÅÍ ¼³¸íÀÌ ¸ðµÎ ÀνĵÇÁö´Â ¾Ê½À´Ï´Ù. COBOL µ¥ÀÌÅÍ Ç׸ñÀº ´ÙÀ½ Å×ÀÌºí¿¡¼ ¼³¸íµÈ µ¥ÀÌÅÍ Ç׸ñ°ú ÀÏÄ¡ÇØ¾ß ÇÕ´Ï´Ù. ´Ù¸¥ µ¥ÀÌÅÍ Ç׸ñÀ» »ç¿ëÇÒ °æ¿ì ¿À·ù°¡ ÀϾ ¼ö ÀÖ½À´Ï´Ù.
ÁÖ: | ¸ðµç DB2 È£½ºÆ® ¾ð¾î¿¡¼ DATALINK µ¥ÀÌÅÍ À¯Çü¿¡ ´ëÇÑ È£½ºÆ® º¯¼ö Áö¿øÀº ¾ø½À´Ï´Ù. |
Ç¥ 33. COBOL ¼±¾ð¿¡ ¸ÊÇεǴ SQL µ¥ÀÌÅÍ À¯Çü
SQL Ä÷³ À¯Çü1 | COBOL µ¥ÀÌÅÍ À¯Çü | SQL Ä÷³ À¯Çü ¼³¸í | ||
---|---|---|---|---|
SMALLINT (500 ¶Ç´Â 501) | 01 name PIC S9(4) COMP-5. | ºÎÈ£ÀÖ´Â 16ºñÆ® Á¤¼ö | ||
INTEGER (496 ¶Ç´Â 497) | 01 name PIC S9(9) COMP-5. | ºÎÈ£ÀÖ´Â 32ºñÆ® Á¤¼ö | ||
BIGINT (492 ¶Ç´Â 493) | 01 name PIC S9(18) COMP-5. | ºÎÈ£ÀÖ´Â 64ºñÆ® Á¤¼ö | ||
DECIMAL(p,s) (484 ¶Ç´Â 485) | 01 name PIC S9(m)V9(n) COMP-3. | ÆÑµÈ 10Áø¼ö | ||
REAL2 (480 ¶Ç´Â 481) | 01 name USAGE IS COMP-1. | ´ÜÁ¤¹Ð ºÎµ¿ ¼Ò¼öÁ¡ | ||
DOUBLE3 (480 ¶Ç´Â 481) | 01 name USAGE IS COMP-2. | ¹èÁ¤¹Ð ºÎµ¿ ¼Ò¼öÁ¡ | ||
CHAR(n) (452 ¶Ç´Â 453) | 01 name PIC X(n). | °íÁ¤ ±æÀÌ ¹®ÀÚ¿ | ||
VARCHAR(n) (448 ¶Ç´Â 449) |
01 name. 49 length PIC S9(4) COMP-5. 49 name PIC X(n). 1<=n<=32 672 | °¡º¯ ±æÀÌ ¹®ÀÚ¿ | ||
LONG VARCHAR (456 ¶Ç´Â 457) |
01 name. 49 length PIC S9(4) COMP-5. 49 data PIC X(n). 32 673<=n<=32 700 | ±ä °¡º¯ ±æÀÌ ¹®ÀÚ¿ | ||
CLOB(n) (408 ¶Ç´Â 409) |
01 MY-CLOB USAGE IS SQL TYPE IS CLOB(n). 1<=n<=2 147 483 647 | ´ëÇü ¿ÀºêÁ§Æ®(LOB) °¡º¯ ±æÀÌ ¹®ÀÚ¿ | ||
CLOB À§Ä¡ ÁöÁ¤ÀÚ º¯¼ö4 (964 ¶Ç´Â 965) | 01 MY-CLOB-LOCATOR USAGE IS SQL TYPE IS CLOB-LOCATOR. | ¼¹öÀÇ CLOB ¿£ÅÍÆ¼¸¦ ½Äº°ÇÕ´Ï´Ù. | ||
CLOB ÆÄÀÏ ÂüÁ¶ º¯¼ö4 (920 ¶Ç´Â 921) | 01 MY-CLOB-FILE USAGE IS SQL TYPE IS CLOB-FILE. | CLOB µ¥ÀÌÅ͸¦ Æ÷ÇÔÇÑ ÆÄÀÏÀÇ ¼³¸íÀÚ | ||
BLOB(n) (404 ¶Ç´Â 405) | 01 MY-BLOB USAGE IS SQL TYPE IS BLOB(n).
| ´ëÇü ¿ÀºêÁ§Æ®(LOB) °¡º¯ ±æÀÌ 2Áø ¹®ÀÚ¿ | ||
BLOB À§Ä¡ ÁöÁ¤ÀÚ º¯¼ö4 (960 ¶Ç´Â 961) | 01 MY-BLOB-LOCATOR USAGE IS SQL TYPE IS BLOB-LOCATOR. | ¼¹öÀÇ BLOB ¿£ÅÍÆ¼¸¦ ½Äº°ÇÕ´Ï´Ù. | ||
BLOB ÆÄÀÏ ÂüÁ¶ º¯¼ö4 (916 ¶Ç´Â 917) | 01 MY-CLOB-FILE USAGE IS SQL TYPE IS CLOB-FILE. | CLOB µ¥ÀÌÅ͸¦ Æ÷ÇÔÇÑ ÆÄÀÏÀÇ ¼³¸íÀÚ | ||
DATE (384 ¶Ç´Â 385) | 01 identifier PIC X(10). | 10¹ÙÀÌÆ® ¹®ÀÚ¿ | ||
TIME (388 ¶Ç´Â 389) | 01 identifier PIC X(8). | 8¹ÙÀÌÆ® ¹®ÀÚ¿ | ||
TIMESTAMP (392 ¶Ç´Â 393) | 01 identifier PIC X(26). | 26¹ÙÀÌÆ® ¹®ÀÚ¿ | ||
| ||||
GRAPHIC(n) (468 ¶Ç´Â 469) | 01 name PIC G(n) DISPLAY-1. | °íÁ¤ ±æÀÌ 2 ¹ÙÀÌÆ® ¹®ÀÚ¿ | ||
VARGRAPHIC(n) (464 ¶Ç´Â 465) |
01 name. 49 length PIC S9(4) COMP-5. 49 name PIC G(n) DISPLAY-1. 1<=n<=16 336 | 2 ¹ÙÀÌÆ® ¹®ÀÚ¿ ±æÀÌ Ç¥½Ã±â¸¦ Æ÷ÇÔÇÏ´Â °¡º¯ ±æÀÌÀÇ 2 ¹ÙÀÌÆ® ¹®ÀÚ¿ | ||
LONG VARGRAPHIC (472 ¶Ç´Â 473) |
01 name. 49 length PIC S9(4) COMP-5. 49 name PIC G(n) DISPLAY-1. 16 337<=n<=16 350 | 2 ¹ÙÀÌÆ® ¹®ÀÚ¿ ±æÀÌ Ç¥½Ã±â¸¦ Æ÷ÇÔÇÏ´Â °¡º¯ ±æÀÌÀÇ 2 ¹ÙÀÌÆ® ¹®ÀÚ¿ | ||
DBCLOB(n) (412 ¶Ç´Â 413) | 01 MY-DBCLOB USAGE IS SQL TYPE IS DBCLOB(n).
| 4 ¹ÙÀÌÆ® ¹®ÀÚ¿ ±æÀÌ Ç¥½Ã±â¸¦ Æ÷ÇÔÇÏ´Â ´ëÇü ¿ÀºêÁ§Æ®(LOB) °¡º¯ ±æÀÌÀÇ 2 ¹ÙÀÌÆ® ¹®ÀÚ¿ | ||
DBCLOB À§Ä¡ ÁöÁ¤ÀÚ º¯¼ö4 (968 ¶Ç´Â 969) | 01 MY-DBCLOB-LOCATOR USAGE IS SQL TYPE IS DBCLOB-LOCATOR. | ¼¹öÀÇ DBCLOB ¿£ÅÍÆ¼¸¦ ½Äº°ÇÕ´Ï´Ù. | ||
DBCLOB ÆÄÀÏ ÂüÁ¶ º¯¼ö4 (924 ¶Ç´Â 925) | 01 MY-DBCLOB-FILE USAGE IS SQL TYPE IS DBCLOB-FILE. | DBCLOB µ¥ÀÌÅ͸¦ Æ÷ÇÔÇÑ ÆÄÀÏÀÇ ¼³¸íÀÚ | ||
´ÙÀ½Àº Áö¿øµÇ´Â °¢ SQL µ¥ÀÌÅÍ À¯Çü¿¡ ´ëÇØ ¼±¾ðµÈ È£½ºÆ® º¯¼ö¸¦ Æ÷ÇÔÇÑ »ùÇà SQL ¼±¾ð ÀýÀÔ´Ï´Ù.
EXEC SQL BEGIN DECLARE SECTION END-EXEC. * 01 age PIC S9(4) COMP-5. 01 divis PIC S9(9) COMP-5. 01 salary PIC S9(6)V9(3) COMP-3. 01 bonus USAGE IS COMP-1. 01 wage USAGE IS COMP-2. 01 nm PIC X(5). 01 varchar. 49 leng PIC S9(4) COMP-5. 49 strg PIC X(14). 01 longvchar. 49 len PIC S9(4) COMP-5. 49 str PIC X(6027). 01 MY-CLOB USAGE IS SQL TYPE IS CLOB(1M). 01 MY-CLOB-LOCATOR USAGE IS SQL TYPE IS CLOB-LOCATOR. 01 MY-CLOB-FILE USAGE IS SQL TYPE IS CLOB-FILE. 01 MY-BLOB USAGE IS SQL TYPE IS BLOB(1M). 01 MY-BLOB-LOCATOR USAGE IS SQL TYPE IS BLOB-LOCATOR. 01 MY-BLOB-FILE USAGE IS SQL TYPE IS BLOB-FILE. 01 MY-DBCLOB USAGE IS SQL TYPE IS DBCLOB(1M). 01 MY-DBCLOB-LOCATOR USAGE IS SQL TYPE IS DBCLOB-LOCATOR. 01 MY-DBCLOB-FILE USAGE IS SQL TYPE IS DBCLOB-FILE. 01 MY-PICTURE PIC G(16000) USAGE IS DISPLAY-1. 01 dt PIC X(10). 01 tm PIC X(8). 01 tmstmp PIC X(26). 01 wage-ind PIC S9(4) COMP-5. * EXEC SQL END DECLARE SECTION END-EXEC.
´ÙÀ½Àº Áö¿øµÇ´Â COBOL µ¥ÀÌÅÍ À¯Çü¿¡ ´ëÇÑ Ãß°¡ ±ÔÄ¢ÀÔ´Ï´Ù.
01 identifier PIC S9(m)V9(n) COMP-3
01 identifier PIC S9(3)V COMP-3 01 identifier PIC SV9(3) COMP-3 01 identifier PIC S9V COMP-3 01 identifier PIC SV9 COMP-3
ƯÁ¤ µ¥ÀÌÅͺ£À̽º Ä÷³Àº 2Áø µ¥ÀÌÅÍ¿ëÀ¸·Î ¼±¾ðÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀϹÝÀûÀ¸·Î ¹®ÀÚ¸¦ Æ÷ÇÔÇÑ ÀÌ·± Ä÷³Àº 2Áø Á¤º¸¸¦ À¯ÁöÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. CHAR(n), VARCHAR, LONG VARCHAR ¹× BLOB µ¥ÀÌÅÍ À¯ÇüÀº 2Áø µ¥ÀÌÅ͸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ´Â COBOL È£½ºÆ® º¯¼ö À¯ÇüÀÔ´Ï´Ù. 2Áø µ¥ÀÌÅÍ¿ë ¼Ó¼ºÀ» °¡Áø Ä÷³¿¡ ´ëÇØ ÀÛ¾÷ÇÒ ¶§ ÀÌ·± µ¥ÀÌÅÍ À¯ÇüÀ» »ç¿ëÇϽʽÿÀ.