Oracle(OCI Library) Error 처리
1. 에러핸들러(Error handler) 이용
#include "ocilib.h" void err_handler(OCI_Error *err) { printf("code : ORA-%05i\n" "msg : %s\n" "sql : %s\n", OCI_ErrorGetOCICode(err), OCI_ErrorGetString(err), OCI_GetSql(OCI_ErrorGetStatement(err))); } int main() { OCI_Connection *cn; if (!OCI_Initialize(err_handler, NULL, OCI_ENV_DEFAULT)) return EXIT_FAILURE; cn = OCI_ConnectionCreate("wrong_db", "wrong_usr", "wrong_pwd", OCI_SESSION_DEFAULT); /* ... application code here ... */ OCI_Cleanup(); return EXIT_SUCCESS; }
2. 함수(Function)에서 에러 출력
#include "ocilib.h" int main() { OCI_Connection *cn; if (!OCI_Initialize(NULL, NULL, OCI_ENV_DEFAULT | OCI_ENV_CONTEXT)) return EXIT_FAILURE; cn = OCI_ConnectionCreate("wrong_db", "wrong_usr", "wrong_pwd", OCI_SESSION_DEFAULT); if (cn == NULL) { OCI_Error *err = OCI_GetLastError(); printf("errcode %d, errmsg %s", OCI_ErrorGetOCICode(err), OCI_ErrorGetString(err)); } OCI_Cleanup(); return EXIT_SUCCESS; }
자세한 내용은 여기로.
댓글 없음:
댓글 쓰기