2013-11-24 2 views
1
에 대한 로그인에 실패했습니다.

jdbc : sqlserver : // localhost : 1433; 데이터 원본 = (로컬); 최초 카탈로그 = MarketDataDB; 사용자 ID = andrew; 암호 = mypassword;(JDBC) SQL Server 연결 문자열 : 사용자 '

위 내가 JDBC를 사용하여 SQL 서버 2008 R2 Express 데이터베이스에 연결하기 위해 사용하고있는 연결 문자열이지만,이 오류가 생성됩니다

사용자가 로그인하지 ''

하나를 실패 아이디어?

지정한 사용자 이름과 암호를 사용하여 SQL Server Management Studio 내에서 데이터베이스에 연결할 수 있습니다. 나는이

jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]] 

답변

0
jdbc:sqlserver://localhost\[InstanceName???]:1433;Data Source=(local); InitialCatalog=MarketDataDB; 
User Id=andrew; Password=mypassword; 

을 사용하고 있습니다. 기본적으로 SQLExpress는 동적으로 할당 된 포트 번호를 사용합니다. 이를 확인하거나 Configuration Manager 애플릿을 사용하여이를 변경할 수 있습니다.

SQLExpress의 기본 설치가 TCP/IP를 전혀 사용할 수 없다는 것을 알고 있습니다. 응용 프로그램은 공유 메모리 프로토콜을 사용하여 SQLExpress에 연결할 수 있습니다 (물론 동일한 컴퓨터에서만 가능함). TCP/IP를 사용하려면 구성 관리자에서 TCP/IP를 사용 가능하게해야합니다. TCP/IP를 활성화 한 후에는 새 설정을 적용하려면 SQLExpress를 중지했다가 다시 시작해야합니다.

+0

로컬 데이터베이스이므로 인스턴스 이름은 무엇입니까? – user3029269

+0

LocalHost는 서버가있는 위치 이름입니다. 인스턴스 이름은 서버에 연결할 때 사용하는 이름입니다. 하나의 인스턴스에 인스턴스가 설치되어있는 경우 하나의 서버에 기본 인스턴스 이름보다 많은 수의 Sql 서버 인스턴스가있을 수 있습니다 LocalHost \ MSSQLSERVER –

+0

SSMS를 사용하여이 SQL Server에 연결할 때 Localhost \ MSSQLSERVER 또는. \ MSSQLSERVER와 같은 것을 사용해야합니다.이 인스턴스에 연결하기 위해 백 슬래시를 입력 한 후에 사용자 이름을 입력해야합니다. –

0

1433하지 SQLExpress입니다에 대한 SQL 서버에 대한 기본 포트입니다하려고 당신은 당신이 문자열에 인스턴스 이름을 누락 SQL Server 인증