|
안녕하세요? 개박살입니다.
런타임시에 오류를 막아주는 방법은 try ... catch문을 이용해야합니다.
try {
Table1->Insert();
Table1->FieldByName("TEST1")->AsString = "HAHA";
Table1->Post();
}
catch(const Exception& e) {
Application->MessageBox(e.Message.c_str(), "Database Write Error", MB_OK|MB_ICONERROR);
Table1->CancelUpdates();
}
이렇게 하면 insert & Post 작업시에 걸리는 에러를 잡아서
CancelUpdates(); 를 해줘서 런타임 에러를 방지한답니다.
그럼 참고하세요~
허접초보 님이 쓰신 글 :
: 안녕하세요... mdb 에 ADO 를 사용해서 프로그래밍을 하고 있습니다..
: mdb 필드에는 들어가서는 안되는 문자들이 있죠... 가령 예를 들어 ' 같은 문자는 들어가면 안되는 것으로 알고 있습니다.. 그 외에도 들어가서는 안되는 문자들이 들어가면 런타임 오류가 뜨는데요...
:
: 문제는 이런 문자들이 입력될때... 런타임 오류로 프로그램이 죽어버리는 것이 아니고.. 이런 문자들을 포함하고 있는 문자열 들이 들어왔을때.. 입력이 되지 않고 넘어 가버린다던지 하는 방법이 있을까 해서 여쭤봅니다... 물론 문자열에 그런 문자들이 포함되어 있을때 치환을 한뒤 insert 를 하면 되겠지만 mdb 에서 어떤 문자들이 포함되면 안되는지를 잘 몰라서... 그리고 혹시나 문자외에도 다른 어떤 조건에 의해서 Insert 가 제대로 되지 않았을 경우 runtime 오류 대신에 입력되지 않도록 하는 방법이 없는지 알고 싶습니다... 고수님들의 지도바랍니다.. 감사합니다..
:
: try...catch 문을 사용해 보려고 했는데.. 이것 역시 잘 안되는 것 같아서.. ㅡㅡㆀ 그럼 답변기다리겠습니다.. ^^
|