2013-08-30 1 views
-2

데이터베이스에서 일부 SQL 쿼리를 실행하는 Windows 응용 프로그램이 있습니다. 데이터베이스에 연결하여 수동으로 실행하면 SQL Server 관리 스튜디오 (SSMS)에서 성공 또는 실패했는지 여부를 알리는 메시지가 표시됩니다. 해당 메시지를 응용 프로그램 메시지 상자에 인쇄하고 싶습니다. 내가 봤는데 같은 코드를 시도 :메시지 상자에 표시 할 SQL 실행 쿼리 출력

string test = ((string)SqlCmd.ExecuteScalar()); 
MessageBox.Show(test); 

그러나 여기에 인쇄 된 결과는 다른 것으로 예상되지 않습니다. 나에게 성공 메시지를 보여준 동일한 단계를 수동으로 실행하여 확인했다.

아무도 도와 줄 수 있습니까? 모든 의견은 정말로 감사하겠습니다.

답변

0

당신이해야 할 일은 try catch block에 실행을 감싸고 예외가 발생하면 메시지를 표시하고, 그렇지 않으면 성공입니다. 오류 메시지를 조작하는 여러 캐치와 catch 블록을 구체화 와트를 할 수 있도록

뭔가

try 
{ 
    SqlCmd.ExecuteScalar(); 
    MessageBox.Show("Success"); 
} 
catch(Exception ex) 
{ 
    MessageBox.Show(String.Format("An exception occurred : {0}", ex.Message); 
} 

것처럼 Exception class은 조금 일반 수 있습니다. 이 ExecuteScalar는 사용하는 데 필요한되지 않은 경우

+0

설명대로 나는 우리가이 경우에 manually..Here을하는 동안 내가 아니라고 얻을 메시지를 인쇄 할 방법 중 하나를 사용하는 것이 좋습니다 것입니다 그 메시지를받는 것. – vysakh

+1

offtopic 인 것을 유감스럽게 생각한다. 그러나 나는 당신이 거기에 가도록했던 'MessageBob'물건을 좋아한다. 메시징 라이브러리의 위대한 이름처럼 들립니다. – Moeri

+0

@Moeri 님이 죄송합니다. 옛날 MS Word의 어시스턴트 같은 것일 수 있습니까? –

0

그때 here

+0

어떻게 할 수 있습니까? – vysakh

+0

ExecuteScalar를 사용해야합니까? 오히려이 스레드에서 설명한 것처럼 솔루션 중 하나를 사용하십시오. http://stackoverflow.com/questions/18211964/retrieving-value-from-sql-executescalar – user65439

+0

또한 Entity 프레임 워크를 살펴보고 문을 사용하여 데이터베이스 코드. – user65439