| PostgreSQL 8.3.3¹®¼ | ||||
|---|---|---|---|---|
| Prev | Fast Backward | Chapter 31. ECPG - C¾ð¾î¿¡ ÀÇÇÑ ¸ÅÀÔSQL | Fast Forward | Next |
º»Àý¿¡¼´Â, ¸ÅÀÔ SQL ÇÁ·Î±×·¥¿¡ ´ëÇØ, ¿¹¿Ü Á¶°ÇÀ̳ª °æ°í¸¦ ¾î¶»°Ô Ãë±ÞÇÒ Áö¿¡ ´ëÇØ¼ ¼³¸íÇÕ´Ï´Ù. À̸¦ À§ÇØ, ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ´Â º¹¼öÀÇ ±â´ÉÀÌ ÀÖ½À´Ï´Ù.
¿¡·¯³ª °æ°í¸¦ ¹Þ¾ÆµéÀÌ´Â °£´ÜÇÑ ¼ö¹ýÀÇ Çϳª´Â, ƯÁ¤ÀÇ Á¶°ÇÀÌ ¹ß»ýÇÒ ¶§¿¡ ƯÁ¤ÀÇ µ¿ÀÛÀ» ½ÇÇàÇϵµ·Ï ¼³Á¤ÇÏ´Â °ÍÀÔ´Ï´Ù. ÀϹÝÀûÀ¸·Î´Â ÀÌÇÏ¿Í °°ÀÌ µË´Ï´Ù.
EXEC SQL WHENEVER condition action ;
condition ´Â ÀÌÇÏÀÇ ¾î´ÀÂÊÀ̵çÀ» ÃëÇÒ ¼ö ÀÖ½À´Ï´Ù.
SQL¹®ÀÇ ½ÇÇàÁß¿¡ ¿¡·¯°¡ ¹ß»ýÇÒ ¶§¿¡, ÁöÁ¤ÇÑ µ¿ÀÛÀÌ ºÒ·Á °©´Ï´Ù.
SQL¹®ÀÇ ½ÇÇà Áß¿¡ °æ°í°¡ ¹ß»ýÇÒ ¶§¿¡, ÁöÁ¤ÇÑ µ¿ÀÛÀÌ ºÒ·Á °©´Ï´Ù.
SQL¹®ÀÌ 0ÇàÀ» ¹Þ°Å³ª, ȤÀº 0Çà¿¡ ¿µÇâÀ» ÁÙ ¶§, ÁöÁ¤ÇÑ µ¿ÀÛÀÌ ºÒ·Á °©´Ï´Ù (ÀÌ Á¶°ÇÀº ¿¡·¯°¡ ¾Æ´Õ´Ï´Ù¸¸, À̰ÍÀ» Ưº°È÷ Ãë±ÞÇÏ°í ½ÍÀº °æ¿ì°¡ ÀÖ½À´Ï´Ù).
action ´Â ÀÌÇÏÀÇ ¾î´ÀÂÊÀ̵çÀ» ÃëÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.
À̰ÍÀº, È¿°úÀûÀ¸·Î ±× Á¶°ÇÀÌ ¹«½ÃµÇ´Â °ÍÀ» ÀǹÌÇÕ´Ï´Ù. À̰ÍÀÌ ±âº»°ªÀÔ´Ï´Ù.
ÁöÁ¤ÇÑ ¶óº§·Î À̵¿ÇÕ´Ï´Ù (CÀÇ goto¹®À» »ç¿ëÇÕ´Ï´Ù).
Ç¥ÁØ ¿¡·¯¿¡ ¸Þ¼¼Áö¸¦ Ãâ·ÂÇÕ´Ï´Ù. À̰ÍÀº, ´Ü¼øÇÑ ÇÁ·Î±×·¥À̳ª ÇÁ·ÎÅäŸÀÔ ÀÛ¼º½Ã¿¡ µµ¿òÀÌ µË´Ï´Ù. ¸Þ¼¼ÁöÀÇ ÀÚ¼¼ÇÑ °ÍÀº ¼³Á¤ÇÒ ¼ö ¾ø½À´Ï´Ù.
ÇÁ·Î±×·¥À» Á¾·á½ÃŰ´Â exit(1)¸¦ È£ÃâÇÕ´Ï´Ù.
CÀÇ break¹®À» ½ÇÇàÇÕ´Ï´Ù. À̰ÍÀº ·çÇÁ³», ȤÀº switch¹®³»¿¡¼¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.
ÀúÀåÇÑ ÀÎÀÚ·Î, ÁöÁ¤ÇÑ CÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù.
Ç¥ÁØ SQL¿¡¼´Â CONTINUE¿Í GOTO(¿ÍGO TO)¸¸À» Á¦°øÇϰí ÀÖ½À´Ï´Ù.
°£´ÜÇÑ ÇÁ·Î±×·¥À¸·Î »ç¿ëÇØ º¸°í ½ÍÀº ¿¹¸¦ ÀÌÇÏ¿¡ ³ªÅ¸³À´Ï´Ù. °æ°í°¡ ¹ß»ýÇßÀ» °æ¿ì¿¡ °£´ÜÇÑ ¸Þ¼¼Áö¸¦ Ç¥½ÃÇØ, ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì¿¡ ÇÁ·Î±×·¥À» Áß´ÜÇÕ´Ï´Ù.
EXEC SQL WHENEVER SQLWARNING SQLPRINT; EXEC SQL WHENEVER SQLERROR STOP;
EXEC SQL WHENEVER¹®Àº CÀÇ ¹®ÀåÀº ¾Æ´Ï°í, SQL ÇÁ¸®ÇÁ·Î¼¼¼ÀÇ Áö½Ã¹®ÀÔ´Ï´Ù. ¼³Á¤ÇÑ ¿¡·¯ ȤÀº °æ°í µ¿ÀÛÀº, ÃÖÃÊÀÇ EXEC SQL WHENEVER¿Í Á¶°ÇÀ» ¹ß»ý½ÃŲ SQL¹®ÀÇ »çÀÌ·Î, µ¿ÀÏ Á¶°Ç¿¡ ´Ù¸¥ µ¿ÀÛÀÌ ¼³Á¤µÇÁö ¾Ê´Â ÀÌ»ó Çڵ鷯¸¦ ¼³Á¤ÇÑ ½ÃÁ¡ ÀÌÈÄ¿¡ ÀÖ´Â, ¸ðµç ¸ÅÀÔ SQL¹®¿¡ Àû¿ëµË´Ï´Ù. CÇÁ·Î±×·¥ÀÇ Á¦¾î È帧Àº °ü°èÇÏÁö ¾Ê½À´Ï´Ù. ±×·¯¹Ç·Î, ÀÌÇÏÀÇ 2°³ÀÇ CÇÁ·Î±×·¥ÀÇ ¹ßÃé´Â ¾î´À ÂÊ¿¡¼µµ ¹Ù¶ó´Â µ¿ÀÛÀ» ½Ç½ÃÇÏÁö ¾Ê½À´Ï´Ù.
/*
* WRONG
*/
int main(int argc, char *argv[])
{
...
if (verbose) {
EXEC SQL WHENEVER SQLWARNING SQLPRINT;
}
...
EXEC SQL SELECT ...;
...
}
/*
* WRONG
*/
int main(int argc, char *argv[])
{
...
set_error_handler();
...
EXEC SQL SELECT ...;
...
}
static void set_error_handler(void)
{
EXEC SQL WHENEVER SQLERROR STOP;
}
º¸´Ù °·ÂÇÏ°Ô ¿¡·¯¸¦ Ãë±ÞÇϱâ À§Çؼ, ¸ÅÀÔ SQL ÀÎÅÍÆäÀ̽º´Â ÀÌÇÏÀÇ ±¸Á¶¸¦ °¡Áö´Â sqlca¶ó´Â À̸§ÀÇ ±Û·Î¹ú º¯¼ö¸¦ Á¦°øÇÕ´Ï´Ù.
struct
{
char sqlcaid[8];
long sqlabc;
long sqlcode;
struct
{
int sqlerrml;
char sqlerrmc[70];
} sqlerrm;
char sqlerrp[8];
long sqlerrd[6];
char sqlwarn[8];
char sqlstate[5];
} sqlca;
(¸ÖƼ ¾²·¹µåÈ µÈ ÇÁ·Î±×·¥¿¡¼´Â, °¢ ¾²·¹µå´Â ÀÚµ¿ÀûÀ¸·Î sqlcaÀÇ º¹»çº»¸¦ µ¶ÀÚÀûÀ¸·Î °¡Áý´Ï´Ù. À̰ÍÀº Ç¥ÁØ CÀÇ errno±Û·Î¹ú º¯¼öÀÇ Ãë±Þ°ú °°Àº µ¿ÀÛÀ» ÇÕ´Ï´Ù. )
sqlca´Â °æ°í¿Í ¿¡·¯ÀÇ ¾çÂÊ ¸ðµÎ¸¦ ´ë»óÀ¸·Î Çϰí ÀÖ½À´Ï´Ù. 1°³ÀÇ ¹®ÀåÀÇ ½ÇÇà½Ã¿¡ º¹¼öÀÇ °æ°í³ª ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì sqlca´Â ¸¶Áö¸·ÀÇ °Í°ú °ü°èµÈ Á¤º¸¸¸À» Æ÷ÇÔÇÕ´Ï´Ù.
Á÷ÀüÀÇ SQL¹®À¸·Î ¿¡·¯°¡ ¾øÀ¸¸é, sqlca.sqlcode´Â 0¿¡, sqlca.sqlstate´Â "00000"ÀÌ µË´Ï´Ù. °æ°í³ª ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì´Â, sqlca.sqlcode´Â ºÎÀÇ °ª¿¡, sqlca.sqlstate´Â "00000"¿Í ´Ù¸£°Ô µË´Ï´Ù. Á¤ÀÇ sqlca.sqlcode´Â, Á÷ÀüÀÇ Äõ¸®°¡ 0ÇàÀ» µ¹·ÁÁÖ¾ú´Ù´Â µîÀÇ ¹«ÇØÀÎ Á¶°ÇÀ» ³ªÅ¸³À´Ï´Ù. sqlca.sqlcode¿Í sqlca.sqlstate´Â 2°³°¡ ´Ù¸¥ ¿¡·¯ ÄÚµå ½ºÅ°¸¶ÀÔ´Ï´Ù. ´ÙÀ½¿¡ »ó¼¼ÇÏ°Ô ¼³¸íÇÕ´Ï´Ù.
Á÷ÀüÀÇ SQL¹®ÀÌ ¼º°øÇϸé, sqlca.sqlerrd[1]Àº ó¸®µÈ ÇàÀÇ OID°¡ ÀúÀåµË´Ï´Ù. ¶Ç, ¸¸¾à ±× ¸í·ÉÀ¸·Î ÀûÀýÇϸé, sqlca.sqlerrd[2]´Â 󸮵È, ȤÀº µ¹·ÁÁÖ¾îÁø Çà¼ö°¡ ÀúÀåµË´Ï´Ù.
¿¡·¯ ȤÀº °æ°íÀÇ °æ¿ì, sqlca.sqlerrm.sqlerrmc¿¡´Â, ±× ¿¡·¯¸¦ ¼³¸íÇÏ´Â ¹®ÀÚ¿ÀÌ ÀúÀåµË´Ï´Ù.
sqlca.sqlerrm.sqlerrml Çʵ忡´Â sqlca.sqlerrm.sqlerrmc¿¡ ÀúÀåµÈ ¿¡·¯ ¸Þ¼¼Áö ±æÀ̰¡ ÀúÀåµË´Ï´Ù
(strlen()ÀÇ °á°úÀÔ´Ï´Ù. ¾Æ¸¶ CÇÁ·Î±×·¡¸Ó´Â ÇÊ¿ä·Î ÇÏÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù).
ÀϺÎÀÇ ¸Þ¼¼Áö´Â °íÁ¤ ±æÀÌÀÇ sqlerrmc¹è¿¿¡´Â ³Ê¹« ±ä °Í¿¡ ÁÖÀÇÇØ ÁÖ¼¼¿ä.
ÀÌ °æ¿ì´Â Àý¾àÇÒ ¼ö ÀÖ½À´Ï´Ù.
°æ°íÀÇ °æ¿ì, sqlca.sqlwarn[2]´Â W·Î ¼³Á¤µË´Ï´Ù (´Ù¸¥ ¸ðµç °æ¿ì¿¡¼´Â, À̰ÍÀº W¿Í ´Ù¸£°Ô ¼³Á¤µË´Ï´Ù). sqlca.sqlwarn[1]ÀÌ W·Î ¼³Á¤µÇ¾úÀ» °æ¿ì, È£½ºÆ® º¯¼ö¿¡ ´ëÀÔÇÒ ¶§¿¡ °ªÀ» Àý¾àÇÒ ¼ö ÀÖ°í ÀÖ½À´Ï´Ù. ´Ù¸¥ ¿ä¼Ò°¡ °æ°í¸¦ ³ªÅ¸³»µµ·Ï ¼³Á¤µÇ¾úÀ» °æ¿ì, sqlca.sqlwarn[0]Àº W·Î ¼³Á¤µË´Ï´Ù.
ÇöÀç, sqlcaid, sqlcabc, sqlerrp, ¹× sqlerrd¿Í sqlwarnÀÇ »ó±â ÀÌ¿ÜÀÇ ¿ä¼Ò´Â À¯¿ëÇÑ Á¤º¸¸¦ °¡ÁöÁö ¾Ê½À´Ï´Ù.
sqlca´Â Ç¥ÁØ SQL¿¡¼´Â Á¤Àǵǰí ÀÖÁö ¾Ê½À´Ï´Ù. ±×·¯³ª, º¹¼öÀÇ ´Ù¸¥ SQL µ¥ÀÌÅͺ£À̽º ½Ã½ºÅÛÀ¸·Î ±¸ÇöµÇ°í ÀÖ½À´Ï´Ù. ±× Á¤ÀÇ´Â ±âº» ºÎºÐÀº ºñ½ÁÇÏÁö¸¸, À̽ļºÀ» °¡Áö´Â ¾îÇø®ÄÉÀ̼ÇÀ» ÀÛ¼ºÇÏ´Â °æ¿ì´Â ±¸ÇöÀÇ Â÷À̸¦ ÁÖÀÇÇØ Á¶»çÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù.
sqlca.sqlstate¿Í sqlca.sqlcode´Â ¿¡·¯ Äڵ带 Á¦°øÇÏ´Â ´Ù¸¥ 2°³ÀÇ ½ºÅ°¸¶ÀÔ´Ï´Ù. ¸ðµÎ Ç¥ÁØ SQL·ÎºÎÅÍ ÆÄ»ýµÈ °ÍÀÔ´Ï´Ù¸¸, SQLCODE´Â SQL-92ÆÇ¿¡¼´Â ¾µ¸ð¾ø°Ô µÈ °ÍÀ¸·Î ¿©°ÜÁø ÀÌÈÄÀÇ ÆÇÀ¸·ÎºÎÅÍ »èÁ¦µÇ¾ú½À´Ï´Ù. µû¶ó¼, ½Å±Ô ¾îÇø®ÄÉÀ̼ǿ¡¼´Â SQLSTATE¸¦ »ç¿ëÇÏ´Â °ÍÀ» °ÇÏ°Ô ±ÇÇÕ´Ï´Ù.
SQLSTATE´Â 5 ¿ä¼ÒÀÇ ¹®ÀÚ ¹è¿ÀÔ´Ï´Ù. ÀÌ 5 ¹®ÀÚ´Â, °¢Á¾ÀÇ ¿¡·¯ Á¶°Ç, °æ°í Á¶°ÇÀÇ Äڵ带 Ç¥ÇöÇÏ´Â ¼ýÀÚ, ´ë¹®ÀڷκÎÅÍ ±¸¼ºµË´Ï´Ù. SQLSTATE´Â °èÃþÀ» °¡Áø ½ºÅ°¸¶ÀÔ´Ï´Ù. ÃÖÃÊÀÇ 2 ¹®ÀÚ´Â Á¶°ÇÀ» ¹üÈÇÑ Å¬·¡½º¸¦ ³ªÅ¸³», ³ª¸ÓÁö 3 ¹®ÀÚ´Â ¹üÈ Å¬·¡½ºÀÇ ºÎŬ·¡½º¸¦ ³ªÅ¸³À´Ï´Ù. ¼º°ø »óÅ´ 00000À̶ó°í ÇÏ´Â ÄÚµå·Î ³ªÅ¸³³´Ï´Ù. SQLSTATEÄÚµåÀÇ ´ëºÎºÐÀº Ç¥ÁØ SQL·Î Á¤Àǵǰí ÀÖ½À´Ï´Ù. PostgreSQL¼¹ö´Â º»ÁúÀûÀ¸·Î SQLSTATE¿¡·¯ Äڵ带 Áö¿øÇϰí ÀÖ½À´Ï´Ù. µû¶ó¼, ¸ðµç ¾îÇø®ÄÉÀ̼ÇÀ¸·Î ÀÌ ¿¡·¯ Äڵ带 »ç¿ëÇÏ´Â °ÍÀ¸·Î, °íµµÀÇ Àϰü¼ºÀ» ´Þ¼ºÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. »ó¼¼ÇÑ °Í¿¡ ´ëÇÏ¿©´Â Appendix AÀ» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.
ÆóÁöµÈ ¿¡·¯ ÄÚµå ½ºÅ°¸¶ÀÎ SQLCODE´Â ´Ü¼øÇÑ Á¤¼öÀÔ´Ï´Ù. 0À̶ó°í ÇÏ´Â °ªÀº ¼º°øÀ» ÀǹÌÇØ, Á¤ÀÇ °ªÀº Ãß°¡ Á¤º¸¸¦ °¡Áø ¼º°øÀ», ºÎÀÇ °ªÀº ¿¡·¯¸¦ ³ªÅ¸³À´Ï´Ù. Ç¥ÁØ SQL¿¡¼´Â, Á÷ÀüÀÇ ¸í·ÉÀÌ 0ÇàÀ» µ¹·ÁÁØ´Ù, ȤÀº 0Çà¿¡ ¿µÇâÀ» ÁØ °ÍÀ» ³ªÅ¸³»´Â 100À̶ó°í ÇÏ´Â °ª±îÁöÀÇ Á¤ÀÇ °ª¸¸À» Á¤ÀÇÇϰí ÀÖ½À´Ï´Ù. ºÎÀÇ °ªÀº ±ÔÁ¤µÇ°í ÀÖÁö ¾Ê½À´Ï´Ù. µû¶ó¼, ÀÌ ½ºÅ°¸¶¿¡¼´Â ³·Àº À̽ļº ¹Û¿¡ ´Þ¼ºÇÏÁö ¸øÇϰí, ¶Ç, ÄÚµå ü°èµµ °èÃþÀ» °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù. ¿ª»çÀûÀ¸·Î, PostgreSQLÀÇ ¸ÅÀÔ SQL ÇÁ·Î¼¼¼¿¡´Â, ¸î °³ÀÇ Æ¯¼öÇÑ SQLCODEÀÇ °ªÀ» Àü¿ë¿¡ ÇÒ´çÇÒ ¼ö ÀÖ°í ÀÖ¾ú½À´Ï´Ù. ÀÌÇÏ¿¡, ±× ¼öÄ¡¿Í ±× »ó¡¸íÀÇ À϶÷À» ³ªÅ¸³À´Ï´Ù. À̰͵éÀº ´Ù¸¥ SQL ±¸Çö¿¡ÀÇ À̽ļºÀÌ ¾ø´Â °ÍÀ» ÀØÁö ¸»¾Æ ÁÖ¼¼¿ä. ¾îÇø®ÄÉÀ̼ÇÀÇ SQLSTATEschema¿¡ÀÇ ÀÌÇàÀ» °£ÀÌÈ Çϱâ À§Çؼ, ´ëÀÀÇÏ´Â SQLSTATEµµ °¡¸®Å°°í ÀÖ½À´Ï´Ù. ±×·¯³ª, 2°³ÀÇ ½ºÅ°¸¶°£ÀÇ °ü°è´Â 1´ë 1Àº ¾Æ´Ï°í 1´ë ´ÙÀÔ´Ï´Ù (½ÇÁ¦´Â ´Ù´ë ´ÙÀÔ´Ï´Ù). ±×·¯¹Ç·Î, °æ¿ì ¸¶´Ù Appendix A¿¡ ³ªÅ¸³½ ±Û·Î¹úÀÎ °¢ SQLSTATE¸¦ ÂüÁ¶ÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù.
ÇÒ´çÀÌ ³¡³ SQLCODEÀÔ´Ï´Ù.
°¡»ó ¸Þ¸ð¸® ºÎÁ·À» ³ªÅ¸³À´Ï´Ù. (SQLSTATE YE001)
¶óÀ̺귯¸®°¡ ÆÄ¾ÇÇϰí ÀÖÁö ¾Ê´Â °ÍÀ» ÇÁ¸®ÇÁ·Î¼¼¼°¡ »ý¼ºÇÑ °ÍÀ» ³ªÅ¸³À´Ï´Ù. ¾Æ¸¶, ȣȯ¼ºÀÌ ¾ø´Â ÇÁ¸®ÇÁ·Î¼¼¼¿Í ¶óÀ̺귯¸®ÀÇ ¹öÁ¯À» »ç¿ëÇϰí ÀÖ½À´Ï´Ù. (SQLSTATE YE002)
¸í·ÉÀÇ »óÁ¤º¸´Ù ¸¹Àº È£½ºÆ® º¯¼ö°¡ ÁöÁ¤µÈ °ÍÀ» ÀǹÌÇÕ´Ï´Ù. (SQLSTATE 07001ȤÀº 07002)
¸í·ÉÀÇ »óÁ¤º¸´Ù ÀûÀº È£½ºÆ® º¯¼ö°¡ ÁöÁ¤µÈ °ÍÀ» ÀǹÌÇÕ´Ï´Ù. (SQLSTATE 07001ȤÀº 07002)
¹®Àǰ¡ º¹¼öÇàÀ» µ¹·ÁÁÖ¾úÁö¸¸, ¹®Àå¿¡¼´Â 1°³ÀÇ °á°úÀÇ ÀúÀåÀÇ Áغñ¹Û¿¡ Çϰí ÀÖÁö ¾Ê¾Ò´ø °ÍÀ» ÀǹÌÇÕ´Ï´Ù (¿¹¸¦ µé¸é, ÁöÁ¤µÈ º¯¼ö°¡ ¹è¿Àº ¾Æ´Ï¾ú´Ù). (SQLSTATE 21000)
È£½ºÆ® º¯¼öÀÇ ÇüŰ¡ intÀÔ´Ï´Ù¸¸, µ¥ÀÌÅͺ£À̽º³»ÀÇ µ¥ÀÌÅÍÇüÀÌ ´Þ¶ó, ±× °ªÀ» int·Î¼ ÇØ¼®ÇÒ ¼ö°¡ ¾ø¾ú½À´Ï´Ù.
¶óÀ̺귯¸®´Â ÀÌ º¯È¯¿¡ strtol()¸¦ »ç¿ëÇÕ´Ï´Ù.
(SQLSTATE 42804)
È£½ºÆ® º¯¼öÀÇ ÇüŰ¡ unsigned intÀÔ´Ï´Ù¸¸, µ¥ÀÌÅͺ£À̽º³»ÀÇ µ¥ÀÌÅÍÇüÀÌ ´Þ¶ó, ±× °ªÀ» unsigned int·Î¼ ÇØ¼®ÇÒ ¼ö°¡ ¾ø¾ú½À´Ï´Ù.
¶óÀ̺귯¸®´Â ÀÌ º¯È¯¿¡ strtoul()¸¦ »ç¿ëÇÕ´Ï´Ù.
(SQLSTATE 42804)
È£½ºÆ® º¯¼öÀÇ ÇüŰ¡ floatÀÔ´Ï´Ù¸¸, µ¥ÀÌÅͺ£À̽º³»ÀÇ µ¥ÀÌÅÍÇüÀÌ ´Þ¶ó, ±× °ªÀ» float·Î¼ ÇØ¼®ÇÒ ¼ö°¡ ¾ø¾ú½À´Ï´Ù.
¶óÀ̺귯¸®´Â ÀÌ º¯È¯¿¡ strtod()¸¦ »ç¿ëÇÕ´Ï´Ù.
(SQLSTATE 42804)
À̰ÍÀº, È£½ºÆ® º¯¼öÀÇ ÇüŰ¡ boolÀÔ´Ï´Ù¸¸, µ¥ÀÌÅͺ£À̽º³»ÀÇ µ¥ÀÌÅͰ¡ 't'µµ 'f'µµ ¾Æ´Ï¾ú´ø °ÍÀ» ÀǹÌÇÕ´Ï´Ù. (SQLSTATE 42804)
PostgreSQL¼¹ö¿¡ ¼Û½ÅµÈ ¹®ÀåÀÌ ºñ¾ú½À´Ï´Ù (Åë»ó ¸ÅÀÔ SQL ÇÁ·Î±×·¥¿¡¼´Â ¹ß»ýÇÏÁö ¾Ê½À´Ï´Ù. ±×·¯¹Ç·Î, À̰ÍÀº ³»ºÎ ¿¡·¯¸¦ ³ªÅ¸³»°í ÀÖÀ»Áöµµ ¸ð¸¨´Ï´Ù). (SQLSTATE YE002)
NULL°ªÀÌ µ¹·ÁÁÖ¾îÁ³½À´Ï´Ù¸¸, NULL¿ëÀÇ Áö½ÃÀÚ º¯¼ö°¡ ÁÖ¾îÁö°í ÀÖÁö ¾Ê¾Ò½À´Ï´Ù. (SQLSTATE 22002)
¹è¿ÀÌ ÇÊ¿äÇÑ °³¼Ò¿¡ º¸Åë º¯¼ö°¡ »ç¿ëµÇ°í ÀÖ¾ú½À´Ï´Ù. (SQLSTATE 42804)
¹è¿°ªÀ» ¿ä±¸Çߴµ¥ µ¥ÀÌÅͺ£À̽º°¡ º¸Åë º¯¼ö¸¦ µ¹·ÁÁÖ¾ú½À´Ï´Ù. (SQLSTATE 42804)
Á¸ÀçÇÏÁö ¾Ê´Â Á¢¼Ó¿¡ ÇÁ·Î±×·¥ÀÌ Á¢¼ÓÇÏ·Á°í Çß½À´Ï´Ù.
Á¸ÀçÇÏÁö¸¸ ¿·Á ÀÖÁö ¾ÊÀº Á¢¼Ó¿¡ ÇÁ·Î±×·¥ÀÌ Á¢¼ÓÇÏ·Á°í Çß½À´Ï´Ù (À̰ÍÀº ³»ºÎ ¿¡·¯ÀÔ´Ï´Ù). (SQLSTATE YE002)
»ç¿ëÇÏ·Á°í ÇÑ ¹®ÀåÀÌ ÁغñµÇ¾î ÀÖÁö ¾Ê¾Ò½À´Ï´Ù. (SQLSTATE 26000)
ÁöÁ¤ÇÑ ±â¼ú¾î°¡ ¹ß°ßµÇÁö ¾Ê¾Ò½À´Ï´Ù. »ç¿ëÇÏ·Á°í ÇÑ ¹®ÀåÀº ÁغñµÇ¾î ÀÖÁö ¾Ê¾Ò½À´Ï´Ù. (SQLSTATE 33000)
±â¼ú¾îÀÇ À妽º°¡ ¹üÀ§ ¹ÛÀ̾ú½À´Ï´Ù. (SQLSTATE 07009)
¹«È¿ÀÎ ±â¼ú¾î Ç׸ñÀÌ ¿ä±¸µÇ¾ú½À´Ï´Ù (À̰ÍÀº ³»ºÎ ¿¡·¯ÀÔ´Ï´Ù). (SQLSTATE YE002)
µ¿ÀûÀÎ ¹®ÀåÀÇ ½ÇÇà½Ã¿¡ µ¥ÀÌÅͺ£À̽º°¡ ¼öÄ¡¸¦ µ¹·ÁÁÖ¾ú½À´Ï´Ù¸¸, È£½ºÆ® º¯¼ö°¡ ¼öÄ¡°¡ ¾Æ´Ï¾ú½À´Ï´Ù. (SQLSTATE 07006)
µ¿ÀûÀÎ ¹®ÀåÀÇ ½ÇÇà½Ã¿¡ µ¥ÀÌÅͺ£À̽º°¡ ¼öÄ¡°¡ ¾Æ´Ñ °ÍÀ» µ¹·ÁÁÖ¾ú½À´Ï´Ù¸¸, È£½ºÆ® º¯¼ö°¡ ¼öÄ¡¿´½À´Ï´Ù. (SQLSTATE 07006)
PostgreSQL¼¹ö·Î ¾î¶°ÇÑ ¿¡·¯°¡ ¹ß»ýÇß½À´Ï´Ù. ÀÌ ¸Þ¼¼Áö´Â PostgreSQL¼¹ö·ÎºÎÅÍÀÇ ¿¡·¯ ¸Þ¼¼Áö¸¦ Æ÷ÇÔÇÕ´Ï´Ù.
PostgreSQL¼¹ö°¡ Æ®·£Àè¼ÇÀÇ ¸ÓŶÀ̳ª ·Ñ¹é(rollback)¸¦ ½ÃÀÛÇÏÁö ¸øÇÏ´Â °ÍÀ» ÅëÁöÇß½À´Ï´Ù. (SQLSTATE 08007)
µ¥ÀÌÅͺ£À̽º¿¡ÀÇ Á¢¼Ó ½ÃÇà¿¡ ½ÇÆÐÇß½À´Ï´Ù.
Á÷ÀüÀÇ ¸í·ÉÀÌ 0ÇàÀ» µ¹·ÁÁØ, 0Çà¿¡ ¿µÇâÀ» ÁØ, Ä¿¼ÀÇ Á¾´Ü¿¡ À̸£°Ô ÇÑ, ¹«ÇØÀÎ Á¶°ÇÀ» ³ªÅ¸³À´Ï´Ù. (SQLSTATE 02000)