2014-04-02 6 views
0

도움이 필요한 초보자입니까? 데이터베이스에 저장할 때, 나는 다음과 같은 오류가 발생합니다 : 유형의 첫 번째 예외 'System.Data.SqlServerCe.SqlCeException이'(내 응용 프로그램의 이름)데이터베이스에 저장할 때 예외 처리 오류가 발생했습니다.

는이 문제를 해결하는 단계를 도와주세요 발생 하나. 미리 감사드립니다.

+0

'InnerException'은 무엇이라고 말합니까? –

답변

1

모든 CLR 예외가보고되도록 Visual Studio 설정을 지정하면 첫 번째 예외가 표시됩니다. 여기에는 실제로 처리하는 예외가 포함됩니다.

Visual Studio의 메뉴에서 디버그> 예외로 이동하고 공용 언어 런타임 예외에 대해 투사 옵션을 선택 취소하십시오.

실제 예외가 멀리 이동하지 않습니다하지만 당신은 당신이 원하는대로 그것을 처리 할 수있을거야 물론

:

try 
{ 
    // do your query 

    // commit current transaction if possible/necessary 
} 
catch (SqlCeException ex) 
{ 
    // handle exception here and rollback current transaction if possible/necessary 
} 
finally 
{ 
    // ensure proper disposal of any commands and connections you have 
} 

그것은 당신이 당신의 쿼리가 제대로 기록 확인해야되는 것은 물론 및 작동을 시도하는 서버 오브젝트가 존재하는지 확인하십시오. 일반적으로 쉼표가 없거나 필드를 찾을 수없는 경우를 처리하지 않으려합니다. 예외 처리는 오류가 발생한 연결, 서버 오작동 등과 같이 코드가 제어 할 수없는 예외적 인 상황에 대한 것이어야합니다.

+0

감사합니다, Crono! – RuthGoodloser

0

SQL 쿼리가 구문 적으로 올바른지 확인해야 할 수도 있습니다.

두 번째로 try-catch 문을 사용하여 MSDN http://msdn.microsoft.com/en-us/library/0yd65esw.aspx에서 예외를 처리하는 방법을 읽어 볼 수 있습니다.

작은 예제는 다음과 같습니다.

try 
{ 
    // ... code which throws exception 
} 
catch (SqlCeException e) 
{ 
    // ... exception handling, e.g. logging, rolling back data, 
    // telling the user something went wrong, you name it 
} 

마지막으로 오류 어떤 실제 SQL 쿼리가 예외를 던지고 원인을 볼 단계에서 응용 프로그램 단계를 디버깅 할 수 없습니다 이상.

+0

감사합니다 바쉬, 나는 그 애인을 시도 할 것입니다! – RuthGoodloser

관련 문제