|
답변 감사합니다.. 그런데 문제가 여전히 발생하고 있는 것이..
ADOQuery->Active = false;
ADOQuery->SQL->Clear();
ADOQuery->SQL->Add( query );
try
{
// ADOQuery->Insert();
ADOQuery->ExecSQL();
}
catch( const Exception& e )
{
Application->MessageBox( e.Message.c_str(), "Database Write Error", MB_OK | MB_ICONERROR );
ADOQuery->CancelUpdates();
}
ADOQuery->Close();
이렇게 했을때... ( 물론 Insert )로도 해봤습니다... catch 에서 MessageBox 를 띄우기 이전에 이미 Runtime 에러가 나고 에러가 난뒤 메세지가 뜹니다.. 그러니 프로그램은 더이상 진행하지 못하고 죽어버립니다.. 예전에도 Try..Catch 문을 사용했을때 이와 똑같은 문제가 발생을 했었는데... ㅠㅠ.
그러니까.. 정리하면 위의 구문처럼 하면.. Catch 에서 잡기 전에 이미 Runtime 오류가 떠 버리고 프로그램이 죽고 난뒤
Application->MessageBox( e.Message.c_str(), "Database Write Error", MB_OK | MB_ICONERROR );
이 구문이 실행이 됩니다.. 이걸 어떻게 좀 해결이 안될까요..?
런타임 오류는 구문오류입니다... 들어가서는 안될 문자가 들어간 것 같습니다.. ㅡㅡㆀ
감사합니다..
|