2013-05-16 2 views
0

나는 내 고용주를 위해 모의 인벤토리/고객 데이터베이스 프로그램을 만들려고합니다. 저는 C#과 SQL에 익숙하지만 C++, PHP, Basic에 대한 기본적인 지식을 가지고 프로그래밍에 완전히 익숙하지는 않습니다.이 프로젝트에 들어갔을 때 매우 자신감이있었습니다. 그러나이 간단한 문제가 저를 죽이고 있습니다. VS 10 Express와 함께 제공되는 로컬 SQL Compact 3.5 서버에서 Northwind 샘플 DB에 연결하는 데 몇 시간 이상을 소비했습니다.Visual Studio Express 10에서 Sqlconnection을 사용할 때의 문제

간단하게 시작하여 연결하려고하기로 결정 했으므로 코드에 어떤 쿼리도 없습니다. 내가 처음 시도한 것은 쿼리가있는 일부 코드를 복사하여 붙여 넣었지만 작동하지 않아 처음부터 시작했지만 여전히 동일한 문제가 있습니다.

Sqlconnection (문자열)을 사용하려고하는데 연결되지 않습니다. 내가 사용하는 연결 문자열은 Visual Studio에 의해 생성 된 문자열입니다. DataDirectory 및 긴 형식으로 디렉터리 쓰기 시도했다.

private void button1_Click(object sender, EventArgs e) 
    { 

     string connection = @"Data Source=|DataDirectory|\Northwind.sdf"; 
     SqlConnection conn = new SqlConnection(connection); 

     try 
     { 
      conn.Open(); 
      MessageBox.Show("Connection Successful!"); //Never happens 
     } 
     catch (Exception) 
     { 
      MessageBox.Show("No connection."); // So tired of this message 
     } 

    } 

무엇이 잘못되었는지 알 수 없습니다. 나는 그것이 데이터 소스 문자열이라는 것을 알았지 만, 내가 시도한 모든 것은 같은 결과를 얻는다. 비슷한 문제를 찾으려고 노력했지만 아무것도 도움이되지 않습니다. 대부분의 사람들은 쿼리 나 코드 구문에 문제가있는 것처럼 보입니다. 연결조차 할 수 없습니다! 나는 부적절하게 VS 나 SQL로 구성된 것을 생각하고있다. 어떤 도움을 주셔서 감사합니다.

다음은 성공적인 연결 테스트 및 일부 설정의 스크린 샷입니다. 당신은 System.Data.SqlServerCe.dll을 참조 할 필요가 및을 사용하여 자세한 정보를 알아 ConnectionStrings.com

string connection = @"Data Source=MyData.sdf;Persist Security Info=False;"; 

확인

업데이트 : http://imgur.com/G0FHQIe

+0

다른 답변과 마찬가지로 connect connectionrings.com을 시도해보세요. 유형에 따라 직접 작성하십시오. 사용중인 연결 –

+0

유용한 사이트이지만 나열된 문자열 중 어느 것도 작동하지 않습니다. 대부분은 내가 필요로하는 것과 관련이 없지만, 어쨌든 운이 없다. VS 10 Express와 12 Express를 모두 설치하면 문제가 될 수 있습니까? – saganator

답변

0

은 다음과 같이 연결 문자열을 변경하십시오 SqlCeConnection 객체, 예 : new SqlCeConnection(connection)

+0

@ "데이터 소스 = C : \ Users \ Travis \ documents \ visual 스튜디오 2010 \ Projects \ SQL 테스트 \ SQL 테스트 \ Northwind.sdf; 보안 정보 유지 = False"로 시도했습니다. 링크를 가져 주셔서 감사합니다. 도움이 되네. 내가 읽은 모든 것은 VS에 의해 생성 된 문자열이 작동해야한다고 말합니다. 왜 그렇지 않을까요? – saganator

+0

@saganator 업데이트 참조, 잘못된 연결 개체를 사용하고 있습니다. 죄송합니다. 코드에서 그 부분을 놓치고 * SqlCeConnection * 개체로 시도해보고 그 방법을 알려주십시오. – Jason

+0

Jason에게 감사드립니다. 나는 침대에서 자고있는 어젯밤에 실제로 그것을 얻었다. 그러나 이것을 잊어 버렸다. 내가 할 수 있으면 내가 너에게 약간의 대표를 줄거야. – saganator