ÀÀ¿ëÇÁ·Î±×·¥ °³¹ß ¾È³»¼
È£½ºÆ® ¾ð¾î ¾È¿¡ Æ÷ÇÔµÈ SQL¹®À¸·Î ÀÀ¿ëÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
SQL¹®Àº µ¥ÀÌÅͺ£À̽º ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÏ´Â ¹Ý¸é, È£½ºÆ® ¾ð¾î´Â ÀÀ¿ëÇÁ·Î±×·¥ÀÌ
½ÇÇàµÇ´Â µ¥ ÇÊ¿äÇÑ ³ª¸ÓÁö Áö¿øÀ» Á¦°øÇÕ´Ï´Ù.
Ç¥ 2¿¡´Â È£½ºÆ® ¾ð¾î ÀÀ¿ëÇÁ·Î±×·¥¿¡ ³»Æ÷µÈ
SQL¹®ÀÌ ÀÖ½À´Ï´Ù. ÀÌ ¿¹¿¡¼ ÀÀ¿ëÇÁ·Î±×·¥Àº SQLCA ±¸Á¶ÀÇ
SQLCODE Çʵ带 Á¡°ËÇÏ¿© °»½ÅÀÌ ¼º°øÇß´ÂÁö¸¦ °áÁ¤ÇÕ´Ï´Ù.
Ç¥ 2. È£½ºÆ® ¾ð¾î¿¡¼ÀÇ Embedding SQL¹®
¾ð¾î
| »ùÇà ¼Ò½º ÄÚµå
|
C/C++
|
EXEC SQL UPDATE staff SET job = 'Clerk' WHERE job = 'Mgr';
if ( SQLCODE < 0 )
printf( "Update Error: SQLCODE = %ld \n", SQLCODE );
|
Java (SQLJ)
|
try {
#sql { UPDATE staff SET job = 'Clerk' WHERE job = 'Mgr' };
}
catch (SQLException e) {
println( "Update Error: SQLCODE = " + e.getErrorCode() );
}
|
COBOL
|
EXEC SQL UPDATE staff SET job = 'Clerk' WHERE job = 'Mgr' END_EXEC.
IF SQLCODE LESS THAN 0
DISPLAY 'UPDATE ERROR: SQLCODE = ', SQLCODE.
|
FORTRAN
|
EXEC SQL UPDATE staff SET job = 'Clerk' WHERE job = 'Mgr'
if ( sqlcode .lt. 0 ) THEN
write(*,*) 'Update error: sqlcode = ', sqlcode
|
ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÖ´Â SQL¹®Àº È£½ºÆ® ¾ð¾î¸¶´Ù ´Ù¸£Áö ¾Ê½À´Ï´Ù. µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥Àº
È£½ºÆ® ¾ð¾î¿¡ ÀÇÇØ 󸮵Ǵ SQL ±¸¹® º¯È¯ ¹æ½ÄÀ» Á¦°øÇÕ´Ï´Ù.
C, C++, COBOL ¶Ç´Â FORTRAN ¾ð¾îÀÇ °æ¿ì, ÀÌ·¯ÇÑ º¯È¯Àº DB2 »çÀü
ó¸® ÄÄÆÄÀÏ·¯¿¡ ÀÇÇØ 󸮵˴ϴÙ. DB2 »çÀü ó¸® ÄÄÆÄÀÏ·¯´Â PREP
¸í·ÉÀ» »ç¿ëÇÏ¿© È£ÃâµË´Ï´Ù. »çÀü ó¸® ÄÄÆÄÀÏ·¯´Â Embedded SQL¹®À» Á÷Á¢
DB2 ·±Å¸ÀÓ ¼ºñ½º API È£Ãâ·Î º¯È¯½Ãŵ´Ï´Ù.
Java ¾ð¾îÀÇ °æ¿ì SQLJ º¯È¯±â´Â SQLJÀýÀ» JDBC¹®À¸·Î º¯È¯ÇÕ´Ï´Ù. SQLJ º¯È¯±â´Â
SQLJ ¸í·ÉÀ¸·Î È£ÃâÇÕ´Ï´Ù.
»çÀü ó¸® ÄÄÆÄÀÏ·¯°¡ ¼Ò½º ÆÄÀÏÀ» ó¸®ÇÒ ¶§ SQL¹®À» °Ë»öÇÏ°í ºñ-SQL
È£½ºÆ® ¾ð¾î¸¦ »ï°¡ÇÕ´Ï´Ù. SQL¹®Àº Ư¼ö ºÐ¸®¹®ÀÚ¿¡ ÀÇÇØ µÑ·¯½Î¿© ÀÖÀ¸¹Ç·Î
½±°Ô ãÀ» ¼ö ÀÖ½À´Ï´Ù. »ç¿ë ÁßÀÎ ¾ð¾î·Î SQL¹®À» ³»Æ÷½ÃŰ´Â µ¥ ÇÊ¿äÇÑ ±¸¹®
Á¤º¸´Â ´ÙÀ½À» º¸½Ê½Ã¿À.
Ç¥ 3¿¡´Â Áö¿øµÇ´Â ÄÄÆÄÀÏ È£½ºÆ® ¾ð¾î·Î
À¯È¿ÇÑ Embedded SQL¹®À» ÀÛ¼ºÇϱâ À§ÇØ ºÐ¸®¹®ÀÚ ¹× ÁÖ¼®À» »ç¿ëÇÏ´Â ¹æ¹ýÀ»
º¸¿© ÁÝ´Ï´Ù.
Ç¥ 3. È£½ºÆ® ¾ð¾î¿¡¼ÀÇ Embedding SQL¹®
¾ð¾î
| »ùÇà ¼Ò½º ÄÚµå
|
C/C++
|
/* Only C or C++ comments allowed here */
EXEC SQL
-- SQL comments or
/* C comments or */
// C++ comments allowed here
DECLARE C1 CURSOR FOR sname;
/* Only C or C++ comments allowed here */
|
SQLJ
|
/* Only Java comments allowed here */
#sql c1 = {
-- SQL comments or
/* Java comments or */
// Java comments allowed here
SELECT name FROM employee
};
/* Only Java comments allowed here */
|
COBOL
|
* See COBOL documentation for comment rules
* Only COBOL comments are allowed here
EXEC SQL
-- SQL comments or
* full-line COBOL comments are allowed here
DECLARE C1 CURSOR FOR sname END-EXEC.
* Only COBOL comments are allowed here
|
FORTRAN
|
C Only FORTRAN comments are allowed here
EXEC SQL
+ -- SQL comments, and
C full-line FORTRAN comment are allowed here
+ DECLARE C1 CURSOR FOR sname
I=7 ! End of line FORTRAN comments allowed here
C Only FORTRAN comments are allowed here
|
[ ÆäÀÌÁöÀÇ ¸Ç À§ | ÀÌÀü ÆäÀÌÁö | ´ÙÀ½ ÆäÀÌÁö | ¸ñÂ÷ | »öÀÎ ]