Sql Server下資料庫連結的使用方法

來源:互聯網
上載者:User

  有時候我們希望在一個sqlserver下訪問另一個sqlserver資料庫上的資料,或者訪問其他oracle資料庫上的資料,要想完成這些操作,我們首要的是建立資料庫連結。

  資料庫連結能夠讓本地的一個sqlserver登入使用者映射到遠端一個資料庫伺服器上,並且像操作本機資料庫一樣。那麼怎麼建立資料庫連結呢?我現在有兩種方法可以實現。

  第一種:在 sqlserver 企業管理器中,建立,這個比較簡單的,首先在 安全性--〉資料庫連結 上點右鍵 ,在出現的菜單中點 建立資料庫連結 ,然後會彈出一個介面,需要我們填寫的有:連結的伺服器(這是一個名字,自己根據情況自行定義,以後就要通過他進行遠端存取了),提供者名稱(這個就是選擇資料驅動,根據資料庫類型來選擇,不能亂選,否則連結不上的),資料來源(對於sqlserver就是遠端資料庫伺服器的主機名稱或者IP,對於 oracle 就是在 oracle net config 中配置的別名),安全上下文使用者和口令(也就是遠程伺服器的使用者和口令)。

  第二種:利用系統預存程序

  建立一個sqlserver對sqlserver的資料庫連結:

exec sp_addlinkedserver 'link_northsnow','','SQLOLEDB','遠程伺服器主機名稱或網域名稱或ip地址'
exec sp_addlinkedsrvlogin 'link_northsnow','false',null,'使用者名稱','使用者口令'

  建立一個sqlserver對Oracle的資料庫連結:

exec sp_addlinkedserver 'link_ora', 'Oracle', 'MSDAORA', 'oracle資料庫伺服器別名'
exec sp_addlinkedsrvlogin 'link_ora', false, 'sa', '使用者名稱', '使用者口令'

  有了資料庫連結我們就可以使用了。對於sqlserver和oracle中的使用方法是有區別的。

  對於sqlserver:

create view v_lhsy_user as select * from link_northsnow.lhsy.dbo.sys_user
select * from v_lhsy_user
其中lhsy為遠端資料庫名
sys_user為表名

  對於 oracle:

create view vvv as select * from link_ora..NORTHSNOW.SYS_USER
select * from vvv;
其中northsnow為遠程oracle資料庫伺服器的一個使用者名稱,SYS_USER為該使用者在該伺服器上的一個表,要非常注意的是:資料庫連結(link_ora)後面有兩個點(..),再往後面必須全部大寫,查詢的對象一般為表格或者視圖,不能查詢同義字。

  要想刪除資料庫連結,也有兩種方法,

  一種是在企業管理器中操作,這個簡單。

  另一種是用系統預存程序:

  exec sp_dropserver 資料庫連結名稱,'droplogins'

  終於寫完了,感興趣的請留言 或 email me:northsnow@163.com

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.