¸±¸®½º Á¤º¸


40.6 Á¦ 3 Àå °í±Þ ±â´É »ç¿ë

º¯°æ ½ÃÀÛ40.6.1 ´ÙÁß ½º·¹µå ÀÀ¿ëÇÁ·Î±×·¥ ÀÛ¼º

"´ÙÁß ½º·¹µå È¥ÇÕ ÀÀ¿ëÇÁ·Î±×·¥" ¼½¼Ç¿¡ ´ÙÀ½ÀÇ ³»¿ëÀ» Ãß°¡ÇØ¾ß ÇÕ´Ï´Ù.

º¯°æ ½ÃÀÛÁÖ:º¯°æ ³¡
º¯°æ ½ÃÀ۱⺻ ½ºÅà ũ±â¸¦ »ç¿ëÇÏÁö ¾Ê°í, ´ë½Å ½ºÅà ũ±â¸¦ ÃÖ¼ÒÇÑ 256 000À¸·Î ´Ã¸®´Â °ÍÀÌ ÁÁ½À´Ï´Ù. DB2¿¡¼­´Â DB2 ÇÔ¼ö¸¦ È£ÃâÇÒ ¶§ ÃÖ¼Ò ½ºÅà ũ±â´Â 256 000À̾î¾ß ÇÕ´Ï´Ù. µû¶ó¼­ ½ºÅÃÀÇ ÃÑ Å©±â¸¦ ÇÒ´çÇÒ ¶§, ÀÀ¿ëÇÁ·Î±×·¥°ú DB2 ÇÔ¼ö È£ÃâÀ» À§ÇÑ ÃÖ¼Ò ¿ä±¸»çÇ×À» ÃæÁ·½Ãų ¼ö ÀÖÀ» Á¤µµÀÇ Å©±â¸¦ ÇÒ´çÇØ¾ß ÇÕ´Ï´Ù. º¯°æ ³¡
º¯°æ ³¡

40.6.2 DB2 CLI À¯´ÏÄÚµå ÀÀ¿ëÇÁ·Î±×·¥ ÀÛ¼º

´ÙÀ½Àº ÀÌ ÀåÀÇ »õ·Î¿î ¼½¼ÇÀÔ´Ï´Ù.

DB2 CLI À¯´ÏÄÚµå ÀÀ¿ëÇÁ·Î±×·¥ Áö¿øÀÇ µÎ ÁÖ¿ä ¿µ¿ªÀÌ ÀÖ½À´Ï´Ù.

  1. ANSI ¹®ÀÚ¿­ Àμö ´ë½Å¿¡ À¯´ÏÄÚµå ¹®ÀÚ¿­ Àμö¸¦ ½ÂÀÎÇÒ ¼ö ÀÖ´Â ÇÔ¼ö ¼¼Æ® Ãß°¡.
  2. À¯Æ¼ÄÚµå µ¥ÀÌÅ͸¦ ¼³¸íÇÏ´Â »õ·Î¿î C ¹× SQL µ¥ÀÌÅÍ À¯Çü Ãß°¡.

´ÙÀ½ ¼½¼Ç¿¡´Â ÀÌµé µÎ ¿µ¿ª¿¡ ´ëÇÑ Ãß°¡ Á¤º¸°¡ ÀÖ½À´Ï´Ù. À¯´ÏÄÚµå ÀÀ¿ëÇÁ·Î±×·¥À¸·Î Ãë±ÞµÇ·Á¸é, ¿¬°áÇϱâ Àü¿¡ ÀÀ¿ëÇÁ·Î±×·¥ÀÌ SQL_ATTR_ANSI_APP ¿¬°á ¼Ó¼ºÀ» SQL_AA_FALSE·Î ¼³Á¤ÇØ¾ß ÇÕ´Ï´Ù. ÀÌ¿Í °°ÀÌ ¼³Á¤Çϸé CLI´Â CLI¿Í µ¥ÀÌÅͺ£À̽º °£ÀÇ ±âº» Åë½Å ¹æ¹ýÀ¸·Î¼­ À¯´ÏÄڵ带 »ç¿ëÇÕ´Ï´Ù.

40.6.2.1 À¯´ÏÄÚµå ÇÔ¼ö

ODBC API ÇÔ¼ö¿¡´Â ÇØ´ç ¹®ÀÚ¿­ Àμö Çü½ÄÀ» ³ªÅ¸³»´Â Á¢¹ÌºÎ°¡ ºÙ¾î ÀÖ½À´Ï´Ù. À¯´ÏÄڵ带 ½ÂÀÎÇÏ´Â ÇÔ¼ö´Â W·Î ³¡³ª°í ANSI¸¦ ½ÂÀÎÇÏ´Â ÇÔ¼ö¿¡´Â Á¢¹ÌºÎ°¡ ¾ø½À´Ï´Ù.

ÁÖ:
ODBC´Â A·Î ³¡³ª´Â À̸§À» °¡Áø µ¿µîÇÑ ÇÔ¼ö¸¦ Ãß°¡ÇÏÁö¸¸ ÀÌ´Â DB2 CLI¿¡´Â »ç¿ëµÇÁö ¾Ê½À´Ï´Ù.
´ÙÀ½Àº ANSI ¹× À¯´ÏÄÚµå ¹öÀüÀ» ¸ðµÎ °¡Áö´Â DB2 CLI¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ´Â ÇÔ¼ö ¸ñ·ÏÀÔ´Ï´Ù.
SQLBrowseConnect        SQLForeignKeys          SQLPrimaryKeys
SQLColAttribute         SQLGetConnectAttr       SQLProcedureColumns
SQLColAttributes        SQLGetConnectOption     SQLProcedures
SQLColumnPrivileges     SQLGetCursorName        SQLSetConnectAttr
SQLColumns              SQLGetDescField         SQLSetConnectOption
SQLConnect              SQLGetDescRec           SQLSetCursorName
SQLDataSources          SQLGetDiagField         SQLSetDescField
SQLDescribeCol          SQLGetDiagRec           SQLSetStmtAttr
SQLDriverConnect        SQLGetInfo              SQLSpecialColumns
SQLGetStmtAttr          SQLStatistics	           SQLError
SQLNativeSQL            SQLTablePrivileges      SQLExecDirect
SQLPrepare              SQLTables

Ç×»ó ¹®ÀÚ¿­ ±æÀÌ°¡ Àμö°¡ µÇ´Â À¯´ÏÄÚµå ÇÔ¼ö´Â ÇØ´ç Àμö¸¦ ¹®ÀÚ ¼ö·Î Çؼ®ÇÕ´Ï´Ù. ¼­¹ö µ¥ÀÌÅÍ¿¡ ´ëÇÑ ±æÀÌ Á¤º¸¸¦ ¸®ÅÏÇÏ´Â ÇÔ¼öÀÇ °æ¿ì¿¡µµ Ç¥½Ã Å©±â¿Í Á¤¹Ðµµ¸¦ ¹®ÀÚ ¼ö·Î ¼³¸íÇÕ´Ï´Ù. ±æÀÌ(µ¥ÀÌÅÍÀÇ Àü¼Û Å©±â)°¡ ¹®ÀÚ¿­ ¶Ç´Â ºñ¹®ÀÚ¿­ µ¥ÀÌÅ͸¦ ³ªÅ¸³¾ ¼ö ÀÖ´Â °æ¿ì, ±æÀÌ´Â ¹ÙÀÌÆ® ¼ö·Î Çؼ®µË´Ï´Ù. ¿¹¸¦ µé¾î, SQLGetInfoW´Â ±æÀ̸¦ ¹ÙÀÌÆ®¼ö·Î ÃëÇÏÁö¸¸, SQLExecDirectW´Â ¹®ÀÚ¼ö¸¦ »ç¿ëÇÕ´Ï´Ù. CLI´Â ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ¹ÙÀεù¿¡ µû¶ó °á°ú ¼¼Æ®¸¦ À¯´ÏÄÚµå ¶Ç´Â ANSI·Î ¸®ÅÏÇÕ´Ï´Ù. ÀÀ¿ëÇÁ·Î±×·¥ÀÌ SQL_C_CHAR¿¡ ¹ÙÀεåÇÒ °æ¿ì, µå¶óÀ̹ö´Â SQL_WCHAR µ¥ÀÌÅ͸¦ SQL_CHAR·Î º¯È¯ÇÕ´Ï´Ù. ODBC µå¶óÀ̹ö °ü¸® ÇÁ·Î±×·¥Àº ANSI µå¶óÀ̹ö¿ëÀ¸·Î SQL_C_WCHARÀ» SQL_C_CHAR¿¡ ¸ÊÇÎÇÏÁö¸¸ À¯´ÏÄÚµå µå¶óÀ̹ö¿ëÀ¸·Î´Â ¸ÊÇÎÇÏÁö ¾Ê½À´Ï´Ù.

40.6.2.2 »õ µ¥ÀÌÅÍ À¯Çü°ú À¯È¿ÇÑ º¯È¯

º¯°æ ½ÃÀÛAddotopmal ODBC ¹× CLI Á¤ÀÇ µ¥ÀÌÅÍ À¯ÇüÀÌ À¯´ÏÄÚµå µ¥ÀÌÅͺ£À̽º¸¦ ¼ö¿ëÇϵµ·Ï Ãß°¡µÇ¾ú½À´Ï´Ù. ÀÌ·¯ÇÑ À¯ÇüÀº ±âÁ¸¿¡ Á¸ÀçÇÏ´Â C ¹× SQL À¯Çü ¼¼Æ®¸¦ ´ëüÇÕ´Ï´Ù. »õ·Î¿î C À¯ÇüÀÎ SQL_C_WCHARÀº C ¹öÆÛ¿¡ UCS-2 µ¥ÀÌÅÍ°¡ ¿ø½Ã endian Çü½ÄÀ¸·Î ÀÖÀ½À» ÀǹÌÇÕ´Ï´Ù. »õ·Î¿î SQL À¯ÇüÀÎ SQL_WCHAR, SQL_WVARCHAR ¹× SQL_WLONGVARCHARÀº ƯÁ¤ ¿­À̳ª ¸Å°³º¯¼ö Ç¥½Ã±â¿¡ À¯´ÏÄÚµå µ¥ÀÌÅÍ°¡ µé¾î ÀÖÀ½À» ³ªÅ¸³À´Ï´Ù. DB2 À¯´ÏÄÚµå µ¥ÀÌÅͺ£À̽ºÀÇ °æ¿ì, ±×·¡ÇÈ Ä÷³Àº »õ·Î¿î À¯ÇüÀ» »ç¿ëÇÏ¿© ¼³¸íµË´Ï´Ù.º¯°æ ³¡


Ç¥ 10. Áö¿øµÇ´Â µ¥ÀÌÅÍ º¯È¯

SQL µ¥ÀÌÅÍ À¯Çü
S
Q
L
_
C
_
C
H
A
R
S
Q
L
_
C
_
W
C
H
A
R
S
Q
L
_
C
_
L
O
N
G
S
Q
L
_
C
_
S
H
O
R
T
S
Q
L
_
C
_
T
I
N
Y
I
N
T
S
Q
L
_
C
_
F
L
O
A
T
S
Q
L
_
C
_
D
O
U
B
L
E
S
Q
L
_
C
_
T
Y
P
E
_
D
A
T
E
S
Q
L
_
C
_
T
Y
P
E
_
T
I
M
E
S
Q
L
_
C
_
T
Y
P
E
_
T
I
M
E
S
T
A
M
P
S
Q
L
_
C
_
B
I
N
A
R
Y
S
Q
L
_
C
_
B
I
T
S
Q
L
_
C
_
D
B
C
H
A
R
S
Q
L
_
C
_
C
L
O
B
_
L
O
C
A
T
O
R
S
Q
L
_
C
_
B
L
O
B
_
L
O
C
A
T
O
R
S
Q
L
_
C
_
D
B
C
L
O
B
_
L
O
C
A
T
O
R
S
Q
L
_
C
_
B
I
G
I
N
T
S
Q
L
_
C
_
N
U
M
E
R
I
C
BLOB
X
X









D




X
CHAR
D
X
X
X
X
X
X
X
X
X
X
X




X
X
CLOB
D
X









X



X


DATE
X
X






D


X






DBCLOB


X









X


D



X
DECIMAL
D
X
X
X
X
X
X




X
X




X
X
DOUBLE
X
X
X
X
X
X
D





X




X
X
FLOAT
X
X
X
X
X
X
D





X




X
X
GRAPHIC
(ºñ À¯´ÏÄÚµå)
X
X











D



GRAPHIC
(À¯´ÏÄÚµå)
X
X
X
X
X
X
X
X
X
X
X
X
D




X


INTEGER
X
X
D
X
X
X
X





X




X
X
LONG
VARCHAR
D
X









X





LONG
VARGRAPHIC
(ºñ À¯´ÏÄÚµå)
X
X









X


D



LONG
VARGRAPHIC
(À¯´ÏÄÚµå)
X
X









X


D






NUMERIC
D
X
X
X
X
X
X





X




X
REAL
X
X
X
X
X
D
X





X




X
SMALLINT
X
X
X
D
X
X
X





X




X
X
BIGINT
X
X
X
X
X
X
X




X
X




D
X
TIME
X
X







D
X






TIMESTAMP
X
X






X
X
D






VARCHAR
D
X
X
X
X
X
X
X
X
X
X
X




X
X
VARGRAPHIC
(ºñ À¯´ÏÄÚµå)
X
X











D



VARGRAPHIC
(À¯´ÏÄÚµå)
X
X
X
X
X
X
X
X
X
X
X
X
D




X


ÁÖ:

D
º¯È¯ÀÌ Áö¿øµË´Ï´Ù. SQL µ¥ÀÌÅÍ À¯Çü¿¡ ´ëÇÑ ±âº» º¯È¯ÀÔ´Ï´Ù.

X
¸ðµç IBM DBMS°¡ º¯È¯À» Áö¿øÇÕ´Ï´Ù.

°ø¹é
IBM DBMS°¡ º¯È¯À» Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

40.6.2.3 Æó±âµÈ Å°¿öµå/ÆÐÄ¡ °ª

À¯´ÏÄÚµå ÀÀ¿ëÇÁ·Î±×·¥ÀÌ Áö¿øµÇ±â Àü¿¡ 1¹ÙÀÌÆ® ¹®ÀÚ µ¥ÀÌÅÍ·Î ÀÛ¾÷Çϵµ·Ï ÀÛ¼ºµÈ ÀÀ¿ëÇÁ·Î±×·¥ÀºÀº GRAPHIC=1,2 ¶Ç´Â 3, Patch2=7 µî°ú °°ÀÌ ÀÏ·ÃÀÇ cli ini ÆÄÀÏ Å°¿öµå ½Ã¸®Áî¿¡ ÀÇÇØ 2¹ÙÀÌÆ® ±×·¡ÇÈ µ¥ÀÌÅÍ·Î ÀÛ¾÷Çϵµ·Ï ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ÀÌ¿Í °°Àº Àӽà Á¶Ä¡¿¡ µû¶ó ±×·¡ÇÈ µ¥ÀÌÅÍ°¡ ¹®ÀÚ µ¥ÀÌÅͷΠǥ½ÃµÇ¸ç ¶ÇÇÑ º¸°íµÇ´Â µ¥ÀÌÅÍÀÇ ±æÀÌ°¡ ´Þ¶óÁý´Ï´Ù.

º¯°æ ½ÃÀÛÀ̵é Å°¿öµå´Â À¯´ÏÄÚµå ÀÀ¿ëÇÁ·Î±×·¥¿¡ ´õ ÀÌ»ó ÇÊ¿äÇÏÁö ¾ÊÀ¸¸ç, ½ÇÁ¦·Î ½É°¢ÇÑ ºÎÀÛ¿ëÀÌ ÀÖÀ¸¹Ç·Î »ç¿ëÇؼ­´Â ¾ÈµË´Ï´Ù. À̸¦ ¾Ë°í ÀÖÁö ¾ÊÀ¸¸é, ƯÁ¤ ÀÀ¿ëÇÁ·Î±×·¥ÀÌ À¯´ÏÄÚµå ÀÀ¿ëÇÁ·Î±×·¥ÀÏ °æ¿ì, ±×·¡ÇÈ µ¥ÀÌÅÍ Ã³¸®¿¡ ¿µÇâÀ» ÁÖ´Â Å°¿öµå ¾øÀÌ ½ÃµµÇϵµ·Ï ±ÇÀåÇÕ´Ï´Ù.º¯°æ ³¡

40.6.2.4 À¯´ÏÄÚµå µ¥ÀÌÅͺ£À̽ºÀÇ ¸®ÅÍ·²

ºñ À¯´ÏÄÚµå µ¥ÀÌÅͺ£À̽º¿¡¼­ LONG VARGRAPHIC ¹× LONG VARCHAR Ä÷³ÀÇ µ¥ÀÌÅÍ´Â ºñ±³µÉ ¼ö ¾ø½À´Ï´Ù. ³»ÀçµÈ ÄÚµå ÆäÀÌÁö º¯È¯ÀÌ Áö¿øµÇÁö ¾ÊÀ¸¹Ç·Î GRAPHIC/VARGRAPHIC ¹× CHAR/VARCHAR Ä÷³ÀÇ µ¥ÀÌÅÍ´Â ¸í½ÃÀû À¯Çüº¯È¯(cast) ÇÔ¼ö¸¦ »ç¿ëÇÏ¿© ¼­·Î ºñ±³Çϰųª ÇÒ´çµÉ ¼ö¸¸ ÀÖ¾ú½À´Ï´Ù. ¿©±â¿¡´Â GRAPHIC/VARGRAPHIC ¸®ÅÍ·²ÀÌ CHAR/VARCHAR ¸®ÅÍ·²°ú G Á¢µÎºÎ¿¡ ÀÇÇØ Â÷º°È­µÇ´Â GRAPHIC/VARGRAPHIC ¹× CHAR/VARCHAR ¸®ÅÍ·²ÀÌ Æ÷ÇԵ˴ϴÙ.

À¯´ÏÄÚµå µ¥ÀÌÅͺ£À̽ºÀÇ °æ¿ì, GRAPHIC/VARGRAPHIC°ú CHAR/VARCHAR ¸®ÅÍ·² »çÀÌÀÇ À¯Çüº¯È¯(CAST)Àº ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù. ¶ÇÇÑ, G Á¢µÎºÎ°¡ GRAPHIC/VARGRAPHIC ¸®ÅÍ·² ¾Õ¿¡ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù. ÃÖ¼ÒÇÑ ÇÑ Àμö°¡ ¸®ÅÍ·²À̸é, ³»ÀçµÈ º¯È¯ÀÌ ¹ß»ýÇÕ´Ï´Ù. ÀÌ´Â G Á¢µÎºÎ°¡ Àְųª ¾ø´Â ¸®ÅÍ·²À» SQLPrepareW() ¶Ç´Â SQLExecDirect()¸¦ »ç¿ëÇÏ´Â ¸í·É¹® ³»¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇØÁÝ´Ï´Ù. LONG VARGRAPHICÀÇ ¸®ÅÍ·²Àº G Á¢µÎºÎ¸¦ °¡Á®¾ßÇÕ´Ï´Ù.

ÀÚ¼¼ÇÑ Á¤º¸´Â SQL ÂüÁ¶¼­ÀÇ "Á¦ 3 Àå ¾ð¾î ¿ä¼Ò"¿¡¼­ "µ¥ÀÌÅÍ À¯Çü°£ À¯Çüº¯È¯"À» ÂüÁ¶ÇϽʽÿÀ.

40.6.2.5 »õ·Î¿î CLI ±¸¼º Å°¿öµå

´ÙÀ½ ¼¼ °³ÀÇ Å°¿öµå¸¦ Ãß°¡ÇÏ¿© À¯´ÏÄÚµå ÀÀ¿ëÇÁ·Î±×·¥ÀÌ µ¥ÀÌÅ×À̽º¿¡ ¿¬°áµÉ ¶§ ¿©ºÐÀÇ ¿À¹öÇìµå¸¦ ÇÇÇÒ ¼ö ÀÖµµ·Ï ÇÏ¿´½À´Ï´Ù.

  1. DisableUnicode

    Å°¿öµå ¼³¸í
    À¯´ÏÄڵ忡 ´ëÇÑ ±âº» Áö¿ø »ç¿ë¾ÈÇÔ

    db2cli.ini Å°¿öµå ±¸¹®
    DisableUnicode = 0 | 1

    ±âº» ¼³Á¤
    0(false)

    DB2 CLI/ODBC ¼³Á¤ ÅÇ
    ÀÌ Å°¿öµå´Â CLI/ODBC ¼³Á¤ ³ëÆ®ºÏÀ» »ç¿ëÇÏ¿© ¼³Á¤ÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÌ Å°¿öµå¸¦ »ç¿ëÇÏ·Á¸é db2cli.ini ÆÄÀÏÀ» Á÷Á¢ ¼öÁ¤ÇØ¾ß ÇÕ´Ï´Ù.

    »ç¿ë¹ý ÁÖÀÇ»çÇ×:

    À¯´ÏÄÚµå Áö¿øÀÌ »ç¿ë °¡´ÉÇÏ°í, À¯´ÏÄÚµå ÀÀ¿ëÇÁ·Î±×·¥ÀÌ È£ÃâÇÑ °æ¿ì, ÄÚµåÆäÀÌÁö º¯È¯¿¡ ÀÇÇÑ ºÒÇÊ¿äÇÑ ÀÚ·á ¼Õ½ÇÀÌ ¾øµµ·Ï º¸ÀåÇϱâ À§ÇÏ¿© CLI´Â ÃÖ¼±ÀÇ Å¬¶óÀ̾ðÆ® ÄÚµå ÆäÀÌÁö¸¦ »ç¿ëÇÏ¿© µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇÏ·Á°í ½ÃµµÇÕ´Ï´Ù. ÀÌ´Â ÄÚµå ÆäÀÌÁö°¡ ±³È¯µÇ¹Ç·Î ¿¬°á ½Ã°£À» Áõ°¡½ÃÅ°°Å³ª ¶Ç´Â ÀÌ·¯ÇÑ Áö¿øÀÌ Ãß°¡µÇ±â ÀÌÀü¿¡´Â ¹ß»ýÄ¡ ¾Ê¾Ò´ø Ŭ¶óÀ̾ðÆ®¿¡¼­ÀÇ ÄÚµå ÆäÀÌÁö º¯È¯À» ÃÊ·¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.

    ÀÌ Å°¿öµå¸¦ True(1)·Î ¼³Á¤Çϸé, µ¥ÀÌÅÍ°¡ ¼­¹ö¿¡ ¼Û½ÅµÇ±â ÀÌÀü¿¡ ¸ÕÀú ¸ðµç À¯´ÏÄÚµå µ¥ÀÌÅÍ°¡ ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ±¹Áö ÄÚµå ÆäÀÌÁö·Î º¯È¯µË´Ï´Ù. ÀÌ´Â ±¹Áö ÄÚµå ÆäÀÌÁö¿¡¼­ ´ëÇ¥µÉ ¼ö ¾ø´Â µ¥ÀÌÅÍÀÇ µ¥ÀÌÅÍ ¼Õ½ÇÀ» ÃÊ·¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.

  2. ConnectCodepage

    Å°¿öµå ¼³¸í
    ¿©ºÐÀÇ ¿¬°á ¿À¹öÇìµå¸¦ ÇÇÇϱâ À§ÇØ µ¥ÀÌÅÍ ¼Ò½º¿¡ ¿¬°áÇÏ´Â °æ¿ì, »ç¿ëÇÒ ±¸Ã¼Àû ÄÚµå ÆäÀÌÁö¸¦ ÁöÁ¤ÇÕ´Ï´Ù.

    db2cli.ini Å°¿öµå ±¸¹®
    ConnectCodepage = 0 | 1 | <any valid db2 code page>

    ±âº» ¼³Á¤
    0

    DB2 CLI/ODBC ¼³Á¤ ÅÇ
    ÀÌ Å°¿öµå´Â CLI/ODBC ¼³Á¤ ³ëÆ®ºÏÀ» »ç¿ëÇÏ¿© ¼³Á¤ÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÌ Å°¿öµå¸¦ »ç¿ëÇÏ·Á¸é db2cli.ini ÆÄÀÏÀ» Á÷Á¢ ¼öÁ¤ÇØ¾ß ÇÕ´Ï´Ù.

    »ç¿ë¹ý ÁÖÀÇ»çÇ×:

    ºñ À¯´ÏÄÚµå ÀÀ¿ëÇÁ·Î±×·¥Àº ¾ðÁ¦³ª ÀÀ¿ëÇÁ·Î±×·¥ÀÇ Áö¿ª ÄÚµåÆäÀÌÁö ¶Ç´Â DB2Codepage ȯ°æ¼³Á¤À» »ç¿ëÇÏ¿© µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇÕ´Ï´Ù. ±âº»ÀûÀ¸·Î CLI´Â À¯´ÏÄÚµå ÀÀ¿ëÇÁ·Î±×·¥ÀÌ UTF-8 ¹× UCS-2 ÄÚµå ÆäÀÌÁö¸¦ »ç¿ëÇÏ¿© À¯´ÏÄÚµå µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áµÇµµ·Ï ÇÕ´Ï´Ù. ºñÀ¯´ÏÄÚµå µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇϱâ À§ÇÑ ±âº»°ªÀº Windows¿ë DB2, Unix¿ë DB2, OS/2¿ë DB2¸¦ ½ÇÇàÇÏ´Â µ¥ÀÌÅͺ£À̽º ¼­¹öÀÇ µ¥ÀÌÅͺ£À̽º ÄÚµå ÆäÀÌÁö¸¦ »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ±×·¯¸é ÄÚµå ÆäÀÌÁö º¯È¯À¸·Î ÀÎÇÑ ºÒÇÊ¿äÇÑ µ¥ÀÌÅÍ À¯½ÇÀÌ ¾ø½À´Ï´Ù.

    ¿¬°á½Ã¿¡ ¿©ºÐÀÇ ¿À¹öÇìµå¸¦ ÇÇÇϱâ À§ÇÏ¿© ºñ À¯´ÏÄÚµå µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇÏ´Â °æ¿ì, »ç¿ëÀÚ´Â ÀÌ Å°¿öµå¸¦ »ç¿ëÇÏ¿© µ¥ÀÌÅͺ£À̽ºÀÇ ÄÚµå ÆäÀÌÁö¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.

    1 °ªÀ» ÁöÁ¤Çϸé SQLDriverConnect()°¡ Ãâ·Â ¿¬°á ¹®ÀÚ¿­¿¡ ¿Ã¹Ù¸¥ °ªÀ» ¸®ÅÏÇÏ°Ô µÇ¹Ç·Î, ÇâÈÄ SQLDriverConnect() È£Ãâ¿¡ °ªÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

  3. À¯´ÏÄÚµå ¼­¹ö

    Å°¿öµå ¼³¸í
    µ¥ÀÌÅÍ ¼Ò½º°¡ À¯´ÏÄÚµå ¼­¹öÀÓÀ» Ç¥½Ã. ¼³Á¤ ConnectCodepage=1208 °ú µ¿ÀÏ.

    db2cli.ini Å°¿öµå ±¸¹®
    UnicodeServer = 0 | 1

    ±âº» ¼³Á¤
    0

    DB2 CLI/ODBC ¼³Á¤ ÅÇ
    ÀÌ Å°¿öµå´Â CLI/ODBC ¼³Á¤ ³ëÆ®ºÏÀ» »ç¿ëÇÏ¿© ¼³Á¤ÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÌ Å°¿öµå¸¦ »ç¿ëÇÏ·Á¸é db2cli.ini ÆÄÀÏÀ» Á÷Á¢ ¼öÁ¤ÇØ¾ß ÇÕ´Ï´Ù.

    »ç¿ë¹ý ÁÖÀÇ»çÇ×:

    ÀÌ Å°¿öµå´Â ConnectCodepage=1208¿Í µ¿ÀÏÇϸç Æí¸®¼ºÀ» À§ÇØ Ãß°¡ÇÏ¿´½À´Ï´Ù. OS/390 ¹öÀü 7 ¶Ç´Â ±× ÀÌ»óÀÇ DB2¿¡ ¿¬°áÇÏ´Â °æ¿ì, ÀÌ Å°¿öµå¸¦ »ç¿ëÇÏ¿© ¿©ºÐÀÇ ¿¬°á ¿À¹öÇìµå¸¦ ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿©ºÐÀÇ Ã³¸®°¡ ÇÊ¿äÇÏÁö ¾ÊÀ¸¹Ç·Î, ÀÌ Å°¿öµå¸¦ WindowsÀÇ DB2, UnixÀÇ DB2 ¶Ç´Â OS/2 µ¥ÀÌÅͺ£À̽ºÀÇ DB2¿¡ »ç¿ëÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù.

º¯°æ ½ÃÀÛ40.6.3 Æ®·£Àè¼Ç ¸ð´ÏÅͷνáÀÇ MTS(Microsoft Transaction Server) »ç¿ë

´ÙÀ½Àº "¼³Ä¡ ¹× ±¸¼º" ¼­ºê¼½¼ÇÀÇ DISABLEMULTITHREAD ±¸¼º Å°¿öµå ±âº»°ªÀ» Á¤Á¤ÇÕ´Ï´Ù.

º¯°æ ³¡

40.6.4 È­¸é À̵¿ Ä¿¼­

´ÙÀ½ Á¤º¸´Â "È­¸é À̵¿ Ä¿¼­" ¼½¼Ç¿¡ Ãß°¡µÇ¾î¾ß ÇÕ´Ï´Ù.

40.6.4.1 OS/390¿ë ¼­¹öÃø È­¸é À̵¿ Ä¿¼­ Áö¿ø

Unix, Windows ¹× OS/2 Ç÷§Æû¿ë UDB Ŭ¶óÀ̾ðÆ®´Â OS/390 ¹öÀü 7 µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇØ ¼öÇàÇÒ ¶§ °»½Å°¡´ÉÇÑ ¼­¹öÃø È­¸é À̵¿ Ä¿¼­¸¦ Áö¿øÇÕ´Ï´Ù. 3Ãþ(three-tier) ȯ°æ¿¡¼­ OS/390 È­¸é À̵¿ Ä¿¼­¸¦ ¾×¼¼½ºÇÏ·Á¸é, Ŭ¶óÀ̾ðÆ® ¹× °ÔÀÌÆ®¿þÀÌ°¡ DB2 UDB ¹öÀü 7.1, FixPak 3 ÀÌ»óÀ» ½ÇÇà ÁßÀ̾î¾ß ÇÕ´Ï´Ù.

È­¸é À̵¿ Ä¿¼­¸¦ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Â 2°³ÀÇ ÀÀ¿ëÇÁ·Î±×·¥ »ç¿ë ÀÎÅÍÆäÀ̽º(ODBC ¹× JDBC)°¡ ÀÖ½À´Ï´Ù. JDBC ÀÎÅÍÆäÀ̽º´Â Á¤Àû È­¸é À̵¿ Ä¿¼­¸¸À» ¾×¼¼½ºÇÒ ¼ö ÀÖÁö¸¸, ODBC ÀÎÅÍÆäÀ̽º´Â Á¤Àû ¹× keyset À§ÁÖ(keyset-driven) ¼­¹öÃø È­¸é À̵¿ Ä¿¼­¸¦ ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù.

Ä¿¼­ ¼Ó¼º

¾Æ·¡ Å×À̺íÀº ODBC¿¡¼­ OS/390 ¹öÀü 7 Ä¿¼­¿¡ ´ëÇÑ ±âº» ¼Ó¼ºÀ» ³ª¿­ÇÕ´Ï´Ù.

Ç¥ 11. ODBC¿¡¼­ OS/390 Ä¿¼­¿¡ ´ëÇÑ ±âº» ¼Ó¼º

Ä¿¼­ À¯Çü Ä¿¼­ ¹Î°¨¼º Ä¿¼­ °»½Å°¡´É Ä¿¼­ µ¿½Ã¼º Ä¿¼­ È­¸é À̵¿
Æ÷¿öµå Àü¿ëa ¹ÌÁöÁ¤ °»½Å°¡´ÉÇÏÁö ¾ÊÀ½ Àбâ Àü¿ë µ¿½Ã¼º È­¸é À̵¿ °¡´ÉÇÏÁö ¾ÊÀ½
Á¤Àû ¹Î°¨ÇÏÁö ¾ÊÀ½ °»½Å°¡´ÉÇÏÁö ¾ÊÀ½ Àбâ Àü¿ë µ¿½Ã¼º È­¸é À̵¿
keyset À§ÁÖ(keyset-driven) ¹Î°¨ÇÔ °»½Å°¡´É °ª µ¿½Ã¼º È­¸é À̵¿

a Æ÷¿öµå Àü¿ëÀº FOR UPDATE ÀýÀÌ ¾ø´Â È­¸é À̵¿ Ä¿¼­ÀÇ ±âº» È°µ¿ÀÔ´Ï´Ù. Æ÷¿öµå Àü¿ë Ä¿¼­¿¡¼­ FOR UPDATE¸¦ ÁöÁ¤ÇÏ¸é °»½Å°¡´ÉÇÑ, Àá±Ý µ¿½Ã¼º, È­¸é À̵¿ °¡´ÉÇÏÁö ¾ÊÀº Ä¿¼­¸¦ ÀÛ¼ºÇÕ´Ï´Ù.


Áö¿øµÇ´Â ÆäÄ¡ ¹æÇâ

¸ðµç ODBC ÆäÄ¡ ¹æÇâÀº SQLFetchScroll ¶Ç´Â SQLExtendedFetch ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ Áö¿øµË´Ï´Ù.

keyset À§ÁÖ(keyset-driven) Ä¿¼­ °»½Å

keyset À§ÁÖ(keyset-driven) Ä¿¼­´Â °»½Å°¡´ÉÇÑ Ä¿¼­ÀÔ´Ï´Ù. CLI µå¶óÀ̹ö´Â Á¶È¸°¡ SELECT ... FOR READ ONLY Á¶È¸·Î¼­ ¹ßÇàµÇ°Å³ª FOR UPDATE ÀýÀÌ ÀÌ¹Ì Á¸ÀçÇÏ´Â °æ¿ì¸¦ Á¦¿ÜÇÏ°í FOR UPDATE ÀýÀ» Á¶È¸¿¡ Ãß°¡ÇÕ´Ï´Ù. OS/390¿ë DB2¿¡¼­ ±¸ÇöµÇ´Â keyset À§ÁÖ(keyset-driven) Ä¿¼­´Â °ª µ¿½Ã¼º Ä¿¼­ÀÔ´Ï´Ù. °ª µ¿½Ã¼º Ä¿¼­´Â ÃÖÀû Àá±ÝÀÇ °á°ú¸¦ °¡Á®¿À¸ç, ¿©±â¼­, °ªÀº °»½ÅÀ̳ª »èÁ¦°¡ ½ÃµµµÉ ¶§±îÁö º¸À¯µÇÁö ¾Ê½À´Ï´Ù. °»½Å ¶Ç´Â »èÁ¦°¡ ½ÃµµµÇ¸é, µ¥ÀÌÅͺ£À̽º ¼­¹ö´Â ÀÀ¿ëÇÁ·Î±×·¥ÀÌ °Ë»öÇÑ ÀÌÀü °ª°ú ÁÖ¿ä Å×À̺íÀÇ ÇöÀç °ªÀ» ºñ±³ÇÕ´Ï´Ù. °ªÀÌ ÀÏÄ¡ÇÏ´Â °æ¿ì, °»½Å ¶Ç´Â »èÁ¦°¡ ¼º°øÇÕ´Ï´Ù. °ªÀÌ ÀÏÄ¡ÇÏÁö ¾Ê´Â °æ¿ì, Á¶ÀÛÀÌ ½ÇÆÐÇÕ´Ï´Ù. ½ÇÆÐÇÑ °æ¿ì, ÀÀ¿ëÇÁ·Î±×·¥Àº ´Ù½Ã °ªÀ» Á¶È¸ÇÏ°í ¿©ÀüÈ÷ Àû¿ë°¡´ÉÇÏ´Ù¸é °»½Å ¶Ç´Â »èÁ¦¸¦ ´Ù½Ã ¹ßÇàÇØ¾ß ÇÕ´Ï´Ù.

ÀÀ¿ëÇÁ·Î±×·¥Àº µÎ°¡Áö ¹æ½ÄÀ¸·Î keyset À§ÁÖ(keyset-driven) Ä¿¼­¸¦ °»½ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.

È­¸é À̵¿ Ä¿¼­ Áö¿ø ÀÌÀü¿¡ ÀÛ¼ºµÈ ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ¹®Á¦Á¡ ÇØ°á

È­¸é À̵¿ Ä¿¼­ Áö¿øÀº »õ·Î¿î ±â´ÉÀ̹ǷÎ, OS/390¿ë UDB ¶Ç´Â Unix, Windows ¹× OS/2¿ë UDB´Â Çൿ ¶Ç´Â ¼º´É º¯°æÀÌ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù. È­¸é À̵¿ Ä¿¼­°¡ Áö¿øµÇ±â Àü¿¡´Â, È­¸é À̵¿ Ä¿¼­¸¦ ¿äûÇÑ ÀÀ¿ëÇÁ·Î±×·¥ÀÌ Æ÷¿öµå Àü¿ë Ä¿¼­¸¦ ¹Þ±â ¶§¹®¿¡ ÀÌ·± °æ¿ì°¡ ¹ß»ýÇÕ´Ï´Ù. È­¸é À̵¿ Ä¿¼­ Áö¿øÇϱâ ÀüÀÇ ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ÀÌÀü È°µ¿À» º¹¿øÇÏ·Á¸é, ´ÙÀ½°ú °°Àº ±¸¼º Å°¿öµå¸¦ db2cli.ini ÆÄÀÏ¿¡ ¼³Á¤ÇϽʽÿÀ.


Ç¥ 12. È­¸é À̵¿ Ä¿¼­°¡ Áö¿øÇϱâ Àü¿¡ ÀÀ¿ëÇÁ·Î±×·¥ È°µ¿À» º¹¿øÇÏ´Â ±¸¼º Å°¿öµå °ª

±¸¼º Å°¿öµå ¼³Á¤ ¼³¸í
PATCH2=6 È­¸é À̵¿ Ä¿¼­(keyset À§ÁÖ(keyset-driven) ¹× Á¤Àû ¸ðµÎ)°¡ Áö¿øµÇÁö ¾ÊÀ½À» ³ªÅ¸³»´Â ¸Þ½ÃÁö¸¦ ¸®ÅÏÇÕ´Ï´Ù. CLI´Â ÀÚµ¿À¸·Î È­¸é À̵¿ Ä¿¼­¿¡ ´ëÇÑ ¸ðµç ¿äûÀ» Æ÷¿öµå Àü¿ë Ä¿¼­·Î ³·Ãä´Ï´Ù.
DisableKeysetCursor=1 ¼­¹öÃø ¹× Ŭ¶óÀ̾ðÆ®Ãø keyset À§ÁÖ(keyset-driven) È­¸é À̵¿ Ä¿¼­ ¸ðµÎ¸¦ »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ°ÍÀº keyset À§ÁÖ(keyset-driven) Ä¿¼­°¡ ¿äûµÉ ¶§ CLI µå¶óÀ̹ö°¡ ÀÀ¿ëÇÁ·Î±×·¥¿¡ Á¤Àû Ä¿¼­¸¦ ºÎ¿©Çϵµ·Ï °­Á¦ÇÏ´Â µ¥ »ç¿ëµÉ ¼ö ÀÖ½À´Ï´Ù.
UseServerKeysetCursor=0 Ŭ¶óÀ̾ðÆ®Ãø keyset À§ÁÖ(keyset-driven) Ä¿¼­ ¶óÀ̺귯¸®¸¦ »ç¿ë ÁßÀÎ ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ¼­¹öÃø keyset À§ÁÖ(keyset-driven) Ä¿¼­¸¦ »ç¿ëÇÏÁö ¾ÊÀ½À¸·Î½á keyset À§ÁÖ(keyset-driven) Ä¿¼­¸¦ ½Ã¹Ä·¹ÀÌÆ®ÇÕ´Ï´Ù. Ŭ¶óÀ̾ðÆ®Ãø Ä¿¼­°¡ ¸¹Àº ¾çÀÇ ¿À¹öÇìµå¸¦ ¹ß»ý½ÃÅ°°í ÀϹÝÀûÀ¸·Î ¼­¹öƯ Ä¿¼­º¸´Ù ¼º´ÉÀÌ ³ª»Ú¹Ç·Î ¼­¹öÃø keyset À§ÁÖ(keyset-driven) Ä¿¼­¿¡¼­ ¹®Á¦Á¡ÀÌ ¹ß»ýÇÒ ¶§¸¸ ÀÌ ¿É¼ÇÀ» »ç¿ëÇϽʽÿÀ.

40.6.5 º¹ÇÕ SQL »ç¿ë

´ÙÀ½ÀÇ ÁÖÀÇ»çÇ×ÀÌ Ã¥¿¡¼­ ´©¶ôµÇ¾ú½À´Ï´Ù.

   Any SQL statement that can be prepared dynamically, other than a query,
   can be executed as a statement inside a compound statement.
 
 
   Note: Inside Atomic Compound SQL, savepoint, release savepoint, and
   rollback to savepoint SQL statements are also disallowed. Conversely,
   Atomic Compound SQL is disallowed in savepoint.

40.6.6 ÀúÀå ÇÁ·Î½Ãµà¾î »ç¿ë

º¯°æ ½ÃÀÛ40.6.6.1 SQL ¹× Java ÀúÀå ÇÁ·Î½Ãµà¾î ºôµå ¹× µð¹ö±×¸¦ À§ÇÑ Æ¯±Ç

SQL ÀúÀå ÇÁ·Î½Ãµà¾î¸¦ ºôµå, µð¹ö±×, ½ÇÇàÇÏ·Á´Â »ç¿ëÀÚ¿¡°Ô ´ÙÀ½ Ư±ÇÀ» ºÎ¿©ÇØ¾ß ÇÕ´Ï´Ù.

Java ÀúÀå ÇÁ·Î½Ãµà¾î¸¦ ºôµå, µð¹ö±×, ½ÇÇàÇÏ·Á´Â »ç¿ëÀÚ¿¡°Ô ´ÙÀ½ Ư±ÇÀ» ºÎ¿©ÇØ¾ß ÇÕ´Ï´Ù.

DB2DBG.ROUTINE_DEBUG Å×À̺íÀ» ÀÛ¼ºÇÏ·Á¸é ´ÙÀ½ ¸í·ÉÀ» ½ÇÇàÇϽʽÿÀ.

db2 -tf sqllib/misc/db2debug.ddl

Java ÀúÀå ÇÁ·Î½ÃÀú µð¹ö±×¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ Á¤º¸´Â ÀÀ¿ëÇÁ·Î±×·¥ °³¹ß ¾È³»¼­¸¦ ÂüÁ¶ÇϽʽÿÀ.º¯°æ ³¡

40.6.6.2 CLI·Î ÀúÀå ÇÁ·Î½Ãµà¾î ÀÛ¼º

´ÙÀ½Àº CLI ÀúÀå ÇÁ·Î½Ãµà¾î¿¡ ´ëÇØ ¹®¼­È­µÇÁö ¾ÊÀº Á¦ÇÑ»çÇ×ÀÔ´Ï´Ù.

   If you are making calls to multiple CLI stored procedures,
   the application must close the open cursors from one stored procedure
   before calling the next stored procedure. More specifically, the first
   set of open cursors must be closed before the next stored procedure
   tries to open a cursor.

40.6.6.3 CLI ÀúÀå ÇÁ·Î½Ãµà¾î ¹× ÀÚµ¿ ¹ÙÀεå

´ÙÀ½Àº ÀÌ Ã¥ÀÇ Á¤º¸¸¦ º¸ÃæÇÏ´Â ³»¿ëÀÔ´Ï´Ù.

CLI/ODBC µå¶óÀ̹ö´Â »ç¿ëÀÚ°¡ ÀûÇÕÇÑ Æ¯±Ç ¶Ç´Â ±ÇÇÑÀ» °®°í ÀÖ´Â °æ¿ì, º¸Åë CLI/ODBC ÀÀ¿ëÇÁ·Î±×·¥ÀÌ µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇØ SQLÀ» óÀ½ ½ÇÇàÇÒ ¶§ CLI ÆÐÅ°Áö¸¦ ÀÚµ¿À¸·Î ¹ÙÀεåÇÕ´Ï´Ù. CLI ÆÐÅ°ÁöÀÇ ÀÚµ¿ ¹ÙÀεå´Â ÀúÀå ÇÁ·Î½Ãµà¾î³»¿¡¼­ ¼öÇàµÉ ¼ö ¾øÀ¸¹Ç·Î, ÀÀ¿ëÇÁ·Î±×·¥ÀÌ ¼öÇàÇÏ´Â Á¦ÀÏ Ã³À½ µ¿ÀÛÀÌ CLI ÀúÀå ÇÁ·Î½Ãµà¾î¸¦ È£ÃâÇÏ´Â °ÍÀÎ °æ¿ì ¹ß»ýÇÏÁö ¾Ê½À´Ï´Ù. ±×·¯¹Ç·Î, »õ µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇØ CLI ÀúÀå ÇÁ·Î½Ãµà¾î¸¦ È£ÃâÇÏ´Â CLI ÀÀ¿ëÇÁ·Î±×·¥À» ½ÇÇàÇϱâ Àü¿¡, ÀÌ ¸í·ÉÀ¸·Î CLI ÆÐÅ°Áö¸¦ Çѹø ¹ÙÀεåÇØ¾ß ÇÕ´Ï´Ù.

UNIX
db2 bind <BNDPATH>/@db2cli.lst blocking all

Windows ¹× OS/2
db2bind "%DB2PATH%\bnd\@db2cli.lst" blocking

±ÇÀåÇÏ´Â Á¢±Ù ¹æ¹ýÀº ·±Å¸Àӽà ÀÚµ¿ ¹ÙÀε带 ¿¹¹æÇϱâ À§ÇØ µ¥ÀÌÅͺ£À̽º ÀÛ¼º½Ã À̵é ÆÐÅ°Áö¸¦ Ç×»ó ¹ÙÀεåÇÏ´Â °ÍÀÔ´Ï´Ù. »ç¿ëÀÚ¿¡°Ô Ư±ÇÀÌ ¾ø°Å³ª ´Ù¸¥ ÀÀ¿ëÇÁ·Î±×·¥ÀÌ µ¿½Ã¿¡ ÀÚµ¿ ¹ÙÀε带 ½ÃµµÇÏ´Â °æ¿ì ÀÚµ¿ ¹ÙÀε尡 ½ÇÆÐÇÒ ¼ö ÀÖ½À´Ï´Ù.


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