2010-01-14 2 views
1

원격 서버 (LAN)에서 SQL Server 2008 Express 인스턴스를 쿼리하는 C# 응용 프로그램에서 작업하고 있습니다.은 SQL 연결된 서버 -> MS Access 원격으로 쿼리 할 수없고 서버에서만 작동합니다.

내가 워크 스테이션/dev 컴퓨터에있을 때 SQL Server Management Studio를 열고 Windows 인증을 통해 SQL 인스턴스에 연결할 수 있으며 모든 의도와 목적으로 서버의 SSMS에서의 작업과 동일합니다 . 내가 알 수있는 한, 서버에서 할 수있는 워크 스테이션에서 무엇이든 할 수 있습니다.

동일한 서버에서 SQL 인스턴스에서 연결된 서버로 설정된 Access 2003 .mdb 파일을 호스팅합니다.

쿼리는 SQL db와 Access db의 조인 테이블로 컴파일 된 결과 집합을 반환합니다.

"서버"에서 쿼리를 실행하면 서버 컴퓨터에서 SQL Server Management Studio를 실행하고 있다고 말하는 쿼리가 예상대로 작동합니다. 그러나 SSMS에서 또는 통합 테스트를 실행하거나 응용 프로그램을 디버깅하려고 할 때 내 dev 컴퓨터에서 동일한 쿼리를 실행하려고하면 연결된 서버에서 아무 것도 수행 할 수 없습니다. 나는 SSMS에서 볼 수 있지만, 어떤 시도에 어떤 결과를 실행 : OLE DB 공급자 연결된 서버 'Microsoft.Jet.OLEDB.4.0' '<DatabaseName>'의 데이터 원본 개체를 초기화 할 수 없습니다

.

이 오류와 관련된 많은 스레드를 살펴본 결과 공급자 설정이 많은 순열을 시도했지만 아무런 도움이되지 않았습니다.

  • 액세스 DB는
  • 워크 스테이션 사용자 계정에 액세스 DB가 위치한 서버 디렉토리에 대한 모든 권한을 가지고 (나는/암호 승을 이름 "관리자"를 사용하는 보안 설정을 시도했습니다) 암호가없는
  • 같은 동작이 윈 XP 프로 SP3와 같은 서버에 경험이되었고, 지금은 승리 서버 2003
  • 같은 동작이 윈 XP 프로 SP3와 같은 클라이언트 경험 한 지금은 윈도우 7 프로 X32과

이 t에 좋은 작품 그는 결코 원격으로 서버에 접속할 수 없습니다.

도움 주시면 감사하겠습니다.

+0

NT 인증 대신 SQL Server 인증을 시도 했습니까? – Burnsys

+0

Brilliant! 나는 그것이 작동하고 통합 된 보안이 아닌 이유를 알고 싶지만 대답으로 의견을 게시하면 나는 그것을 표시 할 것입니다. – Jay

+0

이 링크를보고 싶다면 다음과 같은 이유가있을 수 있습니다. http://dba.stackexchange.com/questions/7111/local-login-impersonation-not-working-with-linked-server –

답변

1

NT Auth 대신 SQL Server 인증을 사용하여 Burnsys에서 제안한 것처럼 트릭을 수행하는 것으로 보입니다. 이 이유는입니다. 공개 질문입니다.

+0

아마도 적절한 권한이있었습니다. NT 사용자 그룹에 대해 정의되지 않았습니다. SQL Server 역할의 상호 작용이 연결된 서버와 어떤 관계가 있는지 확신 할 수 없지만 여기서부터 살펴 보겠습니다. –