우리는 Access, Oracle 또는 SQL Server와 같은 기본 데이터베이스에 대한 ODBC 연결을 사용하는 "레거시"응용 프로그램을 사용합니다. 단위 (또는 아마도 더 "통합") 테스트 목적을 위해 SQL Server 2012 LocalDB 인스턴스를 연결하고 싶습니다. 그러나, 나는 올바른 ODBC 연결 문자열을 사용하여 알아낼 수 없습니다.SQL Server 2012 LocalDB 인스턴스에 대한 ODBC 연결
나는 시도했다 : 연결이 열릴 때
[TestMethod]
public void OdbcConnectionToLocalDb()
{
string connectionString = "DRIVER=SQL Server Native Client 11.0;Trusted_Connection=Yes;SERVER=(localdb)\v11.0;Description=LocalDB;";
using (OdbcConnection connection = new OdbcConnection(connectionString))
{
using (var command = new OdbcCommand("select * from Person", connection))
{
connection.Open();
// ...
}
}
}
그러나, 다음과 같은 예외가 발생 :
System.Data.Odbc.OdbcException: ERROR [08001] [Microsoft][SQL Server Native Client 11.0]Named Pipes Provider: Could not open a connection to SQL Server [67].
ERROR [HYT00] [Microsoft][SQL Server Native Client 11.0]Login timeout expired
ERROR [08001] [Microsoft][SQL Server Native Client 11.0]A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online.
는 ODBC를 통해 2012 LocalDB는 SQL Server에 연결하는 것이 가능 연결/드라이버? 특정 파일에 연결할 수 있습니까?
[편집] 개럿이 가능하다고 지적합니다. 내 질문에 정말 있어야합니다 그래서 연결 문자열을 잘못 있어야합니다 : 연결 문자열을 무엇이어야합니까?
여기에 유용한 정보가 있습니다. http://www.mssqltips.com/sqlservertip/2694/getting-started-with-sql-server-2012-express-localdb/ –
감사합니다. @AaronBertrand. 그에게는 유용한 정보가 있지만 내 문제와 관련하여 특별히 도움이되는 내용은 없습니다. 내 LocalDB에 유효한 ODBC 연결 문자열을 가져 오는 중. –
그것이 내가 코멘트가 아닌 대답으로 올린 이유입니다. :-) 일반 응용 프로그램을 일반 Express 인스턴스 대신 LocalDB에 연결하는 이유는 무엇입니까? 연결 문자열은 LocalDB 엔진의 인스턴스를 생성 한 다음 데이터베이스 생성과 같은 작업을 수행하는 데 사용되는 것과 같습니다. 이미 인스턴스를 생성하고 데이터베이스를 생성했다면, 연결 문자열에 더 많은 "stuff"와 더 구체적인'SERVER'를 기대할 것입니다. –