天天看點

SQL SERVER 建立連結伺服器 SP_addlinkedserver

/SQL SERVER

exec sp_addlinkedserver  'srv', ' ',  'SQLOLEDB',  '192.168.0.8,1433'

exec sp_addlinkedsrvlogin   'srv', 'false', null, 'crm',  'crm123'

select * from srv.CloudCenter.dbo.city

Exec sp_droplinkedsrvlogin DBVIP,Null

Exec sp_dropserver DBVIP

EXEC sp_addlinkedserver

      @server='DBVIP',--被通路的伺服器别名

      @srvproduct='',

      @provider='SQLOLEDB',

      @datasrc='Server2'   --要通路的伺服器

EXEC sp_addlinkedsrvlogin

     'DBVIP', --被通路的伺服器别名

     'false',

     NULL,

     'sa', --帳号

     'thankyoubobby' --密碼

Select   *   from DBVIP.pubs.dbo.orders  

/ORACLE

需要SQL SERVER伺服器中安裝ORACLE用戶端;

Exec sp_droplinkedsrvlogin demo,Null

Exec sp_dropserver demo

go

EXEC sp_addlinkedserver

        @server ='demo', --要建立的連結伺服器别名

        @srvproduct='Oracle', --産品名稱    

 @provider='MSDAORA', --OLE DB 字元

 @datasrc='ServiceName'   --資料源 oracle"ora92"network"admin"tnsnames.ora檢視

EXEC sp_addlinkedsrvlogin

     'demo', --已建立的連結伺服器名

     'false', -- 固定 */

     NULL, --為每個登陸SQL SERVER的使用者使用此連結伺服器,否則寫使用者名 */

     'userid', --帳号

     'password' –密碼

go

SELECT * FROM demo.. USERID.TABLE

--注意用大寫,因為在Oracle的資料字典中為大寫

資料庫的格式必須是連結伺服器名..ORACLE使用者名.表名.

SELECT * FROM OPENQUERY(demo ,'select * from tbdemo' )

UPDATE OPENQUERY (demo, 'SELECT id FROM tbdemo WHERE id = 101')

SET name = 'hello';

INSERT OPENQUERY (demo, 'SELECT id FROM tbdemo')

VALUES ('hello');

DELETE OPENQUERY (demo, 'SELECT id FROM tbdemo WHERE name = ''hello''');

如此則在SQL SERVER中就可以通路ORACLE的資料了。

建立的連結伺服器可以在企業管理器中看見.

/ACCESS

--建立連接配接伺服器

EXEC sp_addlinkedserver

'ai',             --要建立的連結伺服器名稱 

‘access',     --産品名稱   

'Microsoft.Jet.OLEDB.4.0', --OLE DB 字元

'd:"testdb"db.mdb' --資料源 -- 盤符:"路徑"檔案名 -- ""網絡名"共享名"檔案名 (網絡版本)

GO

--建立連結伺服器上遠端登入之間的映射

--連結伺服器預設設定為用登陸的上下文進行

--現在我們修改為連接配接連結伺服器不需使用任何登入或密碼

exec sp_addlinkedsrvlogin 'ai','false'

go

select * from ai...mytable

/EXCEL

--建立連接配接伺服器

EXEC sp_addlinkedserver

'ai_ex',            --要建立的連結伺服器名稱 

'ex',     --産品名稱        

'Microsoft.Jet.OLEDB.4.0', --OLE DB 字元

'd:"testdb"mybook.xls' , --資料源 -- 盤符:"路徑"檔案名-- ""網絡名"共享名"檔案名 (網絡版本)

null,

'Excel 5.0' --OLE DB 提供程式特定的連接配接字元串

GO

----建立連結伺服器上遠端登入之間的映射

--連結伺服器預設設定為用登陸的上下文進行

--現在我們修改為連接配接連結伺服器不需使用任何登入或密碼

exec sp_addlinkedsrvlogin 'ai_ex','false'

go

--查詢資料

select * from ai_ex...sheet3$

/MS SQL

--建立連接配接伺服器

EXEC sp_addlinkedserver

'ai_mssql',        --要建立的連結伺服器名稱      

'ms',     --産品名稱 

'SQLOLEDB', --OLE DB 字元

'218.204.111.111,3342' --資料源

GO

--建立連結伺服器上遠端登入之間的映射

EXEC sp_addlinkedsrvlogin

'ai_mssql',

'false',

NULL,

'zhangzhe', --遠端伺服器的登陸使用者名

'fish2231' --遠端伺服器的登陸密碼

go

--查詢資料

select * from ai_mssql.pubs.dbo.jobs

--還有一個更簡單的辦法

--這種方式在連結伺服器建立後,它是預設開放RPC的

--建立連接配接伺服器

EXEC sp_addlinkedserver

'218.204.111.111,3342', --要建立的連結伺服器名稱

'SQL Server' --這裡就用資料源作名稱

GO

--建立連結伺服器上遠端登入之間的映射

EXEC sp_addlinkedsrvlogin

'218.204.111.111,3342',

'false',

NULL,

'zhangzhe', --遠端伺服器的登陸使用者名

'fish2231' --遠端伺服器的登陸密碼

go

--查詢資料

select * from [218.204.253.131,3342].pubs.dbo.jobs

go

繼續閱讀