프로그래밍 방식으로 SQL Server 2005에서 C#으로 DBLink를 만들 수 있습니까?프로그래밍 방식으로 SQL Server 2005에서 C#으로 DBLink를 만들 수 있습니까?
데이터베이스 A와 B가 있다고 가정합니다. B에 연결하기 위해 A에서 DB 링크를 만들고 싶습니다. 사용자로부터 B 데이터베이스 정보를 캡처하고 데이터베이스 A에 DBLink를 만듭니다. C# .Net 버전 2.0에서 가능합니다. ?
프로그래밍 방식으로 SQL Server 2005에서 C#으로 DBLink를 만들 수 있습니까?프로그래밍 방식으로 SQL Server 2005에서 C#으로 DBLink를 만들 수 있습니까?
데이터베이스 A와 B가 있다고 가정합니다. B에 연결하기 위해 A에서 DB 링크를 만들고 싶습니다. 사용자로부터 B 데이터베이스 정보를 캡처하고 데이터베이스 A에 DBLink를 만듭니다. C# .Net 버전 2.0에서 가능합니다. ?
당신은 sp_addlinkedserver를 함께 연결된 서버를 추가 할 수 있습니다 : C#을에서
EXEC sp_addlinkedserver
@server = 'OracleHost',
@srvproduct = 'Oracle',
@provider = 'MSDAORA',
@datasrc = 'MyServer'
, 당신은하는 SqlCommand에서이 쿼리를 저장하고,() 데이터베이스에 그것을 실행하기는 ExecuteNonQuery를 호출 할 수 있습니다.
은 당신이 할 싶어하는 것은이 작업을 수행 저장 프로 시저를 만든 다음 C#
에서 호출되는 다음 저장 프로 시저 확인 :
Create PROCEDURE [dbo].[LinkMyServer]
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
EXEC sp_addlinkedserver @server = N'LinkName',
@srvproduct = N' ',
@provider = N'SQLOLEDB',
@datasrc = N'some.domain.or.ip.com',
@catalog = N'database_name'
EXEC sp_addlinkedsrvlogin N'LinkName', false, N'ServerDomain\Administrator', N'user_on_remotedb', N'password_on_remote_db'
END
이제 원격 DB는 로컬 사용자에 연결되었습니다 관리자.
지금 C#에서 당신은 그냥하는 SqlCommand 및 저장 프로 시저에 대한 설정 유형을 확인하고 비 쿼리 :
ServerDomain \ 관리자는 단지 'DBO'와 같은 SQL 사용자 수를 실행합니다.
희망이 도움이되었습니다.