2012-05-04 4 views
1

SQL Server에 두 개의 서로 다른 데이터베이스가 있는데 db1과 db2라고 말하면 데이터베이스간에 데이터를 조인해야하지만 db1에만 액세스 할 수있는 응용 프로그램을 사용해야합니다.SQL Server에서 다양한 데이터베이스에 액세스

그래서 두 가지 가능성을 생각했습니다 : 첫 번째는 db1에서 뷰를 생성하여 db2에서 데이터를 읽는 것입니다. 두 번째는 db3의 종류 인 논리 또는 가상 데이터베이스를 만드는 것입니다. db1과 db2에 db3를 통해 액세스 할 수 있습니다. 가능한가?

다른 제안을 위해 열렸습니다.

답변

1

보기가 좋은 옵션입니다. "가상"db가 필요하지 않습니다. KISS 원리를 사용하십시오.

+0

나는보기 옵션을 좋아합니다. 내 유일한 관심사는 DB2에 액세스 할 수있는 뷰의 데이터베이스 이름을 수정해야한다는 것입니다. SW 하우스에서 일하면서 일부 고객 사이에서 데이터베이스 이름이 변경되며,이 경우 뷰를 수동으로 변경해야합니다. 트릭이 없다면 나는 모른다! –

0

"논리 또는 가상 데이터베이스"? 필요 없음. DB가 동일한 서버에 있다고 가정하면 db2.dbo.table의 select *와 같은 뷰 또는 직접 선택이 트릭을 수행합니다.

그렇지 않으면 DB1을 가리키는 연결된 서버를 만들어야합니다 DB2

0

예, 저장 프로 시저를 만들고 "결합/조인"SQL 쿼리를 수행하십시오. 의 SQL 쿼리에서

절 당신은 쓸 필요 "에서"당신은 어디에 응용 프로그램 데이터베이스에 저장 프로 시저를 호스팅하는 데 필요 "[데이터베이스 이름]에서. [스키마]. [표]"

에 액세스 할 수 있습니다.

관련 문제