저는 두 SQL Server 인스턴스가 있습니다. 액세스 연결된 서버에 직접
난 그냥 다음 문을 실행하는 서버의 역설 테이블의 일부에 액세스하려면 :SELECT *
FROM [ParadoxDBLinkedServer]...Clients
그런 다음 나는 SQLSERVER64
인스턴스에서 이러한 개체에 액세스해야합니다. 그렇게하기 위해이 인스턴스에 을 가리키는 연결된 서버 [.\SQLSERVER32
]을 만들었습니다.
이제는 SQLSERVER64
인스턴스에서 ParadoxDBLinkedServer
개체에 직접 액세스하려고합니다. 내 말은 다른 연결된 서버에서 연결된 서버에 액세스하는 것입니다.
실행하려고 쿼리 미안은 다음 하나입니다
SELECT *
FROM [.\SQLSERVER32].[ParadoxDBLinkedServer ]...Clients
그러나 나는이 오류가 :
The number name '.\SQLSERVER32.ParadoxDBLinkedServer ...Clients' contains more than the maximum number of prefixes. The maximum is 3.
이 같은 액세스를 수행 할 수있는 방법이 있나요? 내가 여기서 무엇을 놓치고 있니?
오버 헤드를 줄이기 위해 SQLSERVER32
인스턴스에서 ParadoxDBLinkedServer
의 각 테이블에 대한보기를 만드는 것을 피하려고합니다. [. \ SQLSERVER32]..`[ParadoxDBLinkedServer] [SCHEMA_NAME :
을 당신 당신이 당신의 네 부분 명명 규칙에 여분의 객체가있을 때이 오류가 (Linkedservername, '* TABLENAME에서 선택') ]. [Table_Name]'시도해보십시오. –
@Darshan_Viswanath_BI, 스키마가 없습니다. 사실 기본 스키마에 있습니다. 하지만 시도 [. \ SQLSERVER32]. [ParadoxDBLinkedServer]. [기본]. 클라이언트가 : 연결된 서버 "% ls"의 OLE DB 공급자 "% ls"에 테이블 "% ls"이 (가) 없습니다. 테이블이 존재하지 않거나 현재 사용자에게 해당 테이블에 대한 사용 권한이 없습니다. – Andres
두 서버에 모두 로그인하여 [데이터베이스]. [dbo]. [클라이언트]'중에서 선택하십시오. [ParadoxDBLinkedServer]를 접두어로 사용하는 것이 솔루션이어야합니다. 테이블이 없거나 필요한 사용 권한이 없다면 알 수 있습니다. –