2011-09-19 5 views
0

-할 수 없습니다 SQL 연결 내 SQL 연결 코드에 문제가

SqlConnection con = new SqlConnection("Data Source=D:\\MyDocuments\\Desktop\\WorkHours\\WorkHours\\App_Data\\Database1.sdf;" + "Trusted_Connection=true;"); 
con.Open(); 

임 단지가는 연결을 얻으려고 노력하고 메신저이 오류지고, 그 2 개 라인을 통해가는 :

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

내 데이터베이스 URL이 정확하다는 것을 100 % 확신합니다. 도움을 받으실 수 있습니다

+0

어떤 언어로 코딩 하시겠습니까? –

답변

1

http://www.connectionstrings.com/은 훌륭한 사이트이며 적절한 연결 문자열 구문도 잊어 버린 것 같습니다.

http://www.connectionstrings.com/sql-server-2008

하면 컴팩트 버전을 사용하는 경우 -

http://www.connectionstrings.com/sql-server-2005-ce

Data Source =MyData.sdf; Persist Security Info =False; 

또는 ...

Data Source =" + (System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase) + "\\MyData.sdf; Persist Security Info =False; 
+1

그는 소형 버전을 사용하고 있습니다. –

4

을 당신은 잘못된 연결 유형/제공자를 사용하고 있습니다.

데이터베이스 파일의 크기가 * .sdf이고 SQL Server Compact Edition을 사용하고 있으며 Compact Edition에는 System.Data.SqlCe 네임 스페이스와 SqlCeConnection 개체가 필요합니다. 데이터베이스 파일에

  1. 하지 마십시오 하드 코드 경로 : 당신이 것을 해결되면

    , 당신은 여전히 ​​당신의 코드에 두 가지 문제가 있습니다. 파일을 Visual Studio에 리소스로 추가하고 응용 프로그램 시작시 해당 파일을 Application Data 폴더에 복사하여 파일이 이미 있으면 복사가 실패하도록 코드를 작성하십시오.

  2. try/finally 블록에 연결을 포함하고 사용 블록을 사용하여 연결을 설정하십시오.