国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
跨服務(wù)器跨數(shù)據(jù)庫操作

跨服務(wù)器跨數(shù)據(jù)庫操作

測試環(huán)境及同步要求:

有數(shù)據(jù)庫服務(wù)器srv1和srv2,兩臺電腦能互相訪問,有數(shù)據(jù)
srv1.庫名..author有字段:id,name,phone,
srv2.庫名..author有字段:id,name,telphone,adress

要求:
srv1.庫名..author增加記錄則srv1.庫名..author記錄增加
srv1.庫名..author的phone字段更新,則srv1.庫名..author對應(yīng)字段telphone更新
--*/

--大致的處理步驟
--1.在 srv1 上創(chuàng)建連接服務(wù)器,以便在 srv1 中操作 srv2,實現(xiàn)同步
******************************注 意****************************************
***以dba用戶執(zhí)行以下兩句腳本,(注意只有dba用戶有權(quán)限執(zhí)行以下腳本)***
exec sp_addlinkedserver 你的數(shù)據(jù)庫連接名字 ,'','SQLOLEDB',你的數(shù)據(jù)庫url及端口
exec sp_addlinkedsrvlogin 你的數(shù)據(jù)庫連接名字,'false',null,數(shù)據(jù)庫用戶名,數(shù)據(jù)庫用戶密碼
**************************************************************************
exec sp_addlinkedserver  'srv2','','SQLOLEDB','srv2的sql實例名或ip'
exec sp_addlinkedsrvlogin 'srv2','false',null,'用戶名','密碼'
go

--2.在 srv1 和 srv2 這兩臺電腦中,啟動 msdtc(分布式事務(wù)處理服務(wù)),并且設(shè)置為自動啟動
我的電腦--控制面板--管理工具--服務(wù)--右鍵 Distributed Transaction Coordinator--屬性--啟動--并將啟動類型設(shè)置為自動啟動
go


--3.實現(xiàn)同步處理

--a.在srv1..author中創(chuàng)建觸發(fā)器,實現(xiàn)數(shù)據(jù)即時同步
--新增同步
create trigger tr_insert_author on author
for insert
as
set xact_abort on
insert srv2.庫名.dbo.author(id,name,telphone)
select id,name,telphone from inserted
go

--修改同步
create trigger tr_update_author on author
for update
as
set xact_abort on
update b set name=i.name,telphone=i.telphone
from srv2.庫名.dbo.author b,inserted i
where b.id=i.id
go

--刪除同步
create trigger tr_delete_author on author
for delete
as
set xact_abort on
delete b
from srv2.庫名.dbo.author b,deleted d
where b.id=d.id
go

***************************************************************************************************************
來創(chuàng)建一個數(shù)據(jù)庫連接對象,用來連接另一個數(shù)據(jù)庫,然后在執(zhí)行跨數(shù)據(jù)庫操作時只需要在你要操作的表前加上 你的數(shù)據(jù)庫連接名字.dbo.表明

例如:我有個庫叫billing,有多個庫叫subscription1,subscription2,subscription3.........,billing庫中有個表叫SuspendRecord,subscrption 庫中有個表叫ActivePlan
然后我要將subscription1 庫中ActivePlan的phoneNumber收集到billing庫的SuspendRecord表中,可以執(zhí)行如下語句:
insert into SuspendRecord phoneNumber
select phoneNumber from 你的數(shù)據(jù)庫連接名字.subscription1的庫名.dbo.ActivePlan

注:創(chuàng)建數(shù)據(jù)庫連接的語句只能被執(zhí)行一次,如果數(shù)據(jù)庫中存在聰明的連接對象,則再次創(chuàng)建同名的連接對象數(shù)據(jù)庫就會報錯,所以創(chuàng)建前需要檢查是否存在同名的連接對象,方法如下
select name from sys.servers where name=數(shù)據(jù)庫連接名稱

建議:數(shù)據(jù)庫連接名稱生成規(guī)則:數(shù)據(jù)庫連接地址+數(shù)據(jù)庫名稱+用戶名+密碼的hashCode作為連接名稱,這樣用戶修改數(shù)據(jù)庫用戶名、密碼等信息將不會對程序造成影響
***************************************************************************************************************
 

sp_addlinkedserver

創(chuàng)建一個鏈接的服務(wù)器,使其允許對分布式的、針對 OLE DB 數(shù)據(jù)源的異類查詢進(jìn)行訪問。在使用 sp_addlinkedserver 創(chuàng)建鏈接的服務(wù)器之后,此服務(wù)器就可以執(zhí)行分布式查詢。如果鏈接服務(wù)器定義為 Microsoft® SQL Server?,則可執(zhí)行遠(yuǎn)程存儲過程。

語法

sp_addlinkedserver [ @server = ] 'server'

    

[ , [ @srvproduct = ] 'product_name' ]

    

[ , [ @provider = ] 'provider_name' ]

    

[ , [ @datasrc = ] 'data_source' ]

    

[ , [ @location = ] 'location' ]

    

[ , [ @provstr = ] 'provider_string' ]

    

[ , [ @catalog = ] 'catalog' ]

參數(shù)

[ @server = ] 'server'

要創(chuàng)建的鏈接服務(wù)器的本地名稱,server 的數(shù)據(jù)類型為 sysname,沒有默認(rèn)設(shè)置。

如果有多個 SQL Server 實例,server 可以為 servername\instancename。此鏈接的服務(wù)器可能會被引用為下面示例的數(shù)據(jù)源:

SELECT *FROM [servername\instancename.]pubs.dbo.authors.

如果未指定 data_source,則服務(wù)器為該實例的實際名稱。

[ @srvproduct = ] 'product_name'

要添加為鏈接服務(wù)器的 OLE DB 數(shù)據(jù)源的產(chǎn)品名稱。product_name 的數(shù)據(jù)類型為 nvarchar(128),默認(rèn)設(shè)置為 NULL。如果是 SQL Server,則不需要指定 provider_name、data_source、location、provider_string 以及目錄。

[ @provider = ] 'provider_name'

與此數(shù)據(jù)源相對應(yīng)的 OLE DB 提供程序的唯一程序標(biāo)識符 (PROGID)。provider_name 對于安裝在當(dāng)前計算機(jī)上指定的 OLE DB 提供程序必須是唯一的。provider_name 的數(shù)據(jù)類型為nvarchar(128),默認(rèn)設(shè)置為 NULL。OLE DB 提供程序應(yīng)該用給定的 PROGID 在注冊表中注冊。

[ @datasrc = ] 'data_source'

由 OLE DB 提供程序解釋的數(shù)據(jù)源名稱。data_source 的數(shù)據(jù)類型為 nvarchar(4000),默認(rèn)設(shè)置為 NULL。data_source 被當(dāng)作 DBPROP_INIT_DATASOURCE 屬性傳遞以便初始化 OLE DB 提供程序。

當(dāng)鏈接的服務(wù)器針對于 SQL Server OLE DB 提供程序創(chuàng)建時,可以按照 servername\instancename 的形式指定 data_source,它可以用來連接到運行于特定計算機(jī)上的 SQL Server 的特定實例上。servername 是運行 SQL Server 的計算機(jī)名稱,instancename 是用戶將被連接到的特定 SQL Server 實例的名稱。

[ @location = ] 'location'

OLE DB 提供程序所解釋的數(shù)據(jù)庫的位置。location 的數(shù)據(jù)類型為 nvarchar(4000),默認(rèn)設(shè)置為 NULL。location 作為 DBPROP_INIT_LOCATION 屬性傳遞以便初始化 OLE DB 提供程序。

[ @provstr = ] 'provider_string'

OLE DB 提供程序特定的連接字符串,它可標(biāo)識唯一的數(shù)據(jù)源。provider_string 的數(shù)據(jù)類型為 nvarchar(4000),默認(rèn)設(shè)置為 NULL。Provstr 作為 DBPROP_INIT_PROVIDERSTRING 屬性傳遞以便初始化 OLE DB 提供程序。

當(dāng)針對 Server OLE DB 提供程序提供了鏈接服務(wù)器后,可將 SERVER 關(guān)鍵字用作 SERVER=servername\instancename 來指定實例,以指定特定的 SQL Server 實例。servername 是 SQL Server 在其上運行的計算機(jī)名稱,instancename 是用戶連接到的特定的 SQL Server 實例名稱。

[ @catalog = ] 'catalog'

建立 OLE DB 提供程序的連接時所使用的目錄。catalog 的數(shù)據(jù)類型為sysname,默認(rèn)設(shè)置為 NULL。catalog 作為 DBPROP_INIT_CATALOG 屬性傳遞以便初始化 OLE DB 提供程序

上面可以在Transact-SQL幫助里找到

例子:

1.如果要訪問的計算機(jī)名稱為new(同局域網(wǎng)內(nèi)可以共享訪問,計算機(jī)名字規(guī)則)

sp_addlinkedserver 'new'

select * from new.pubs.dbo.jobs

2.如果要訪問的計算機(jī)ip是192.168.100.189(計算機(jī)名稱不和sql語法(可以在我的電腦屬性里修改)或要訪問的是一個靜態(tài)ip或域名)

--添加遠(yuǎn)程sql服務(wù)器

sp_addlinkedserver 'new', ' ', 'MSDASQL', NULL, NULL,

'Driver={SQL Server};Database=hjdb;Server=192.168.100.189;UID=sa;PWD=;'

select * from new.pubs.dbo.jobs

補(bǔ)充:sp_helpserver 顯示所有鏈接的服務(wù)器信息

sp_dropserver 刪除鏈接服務(wù)器的定義

 
 
 
 
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
SQL?SERVER跨服務(wù)器查詢(SQL?SERVER?DBLINK)
通過作業(yè),定時同步兩個數(shù)據(jù)庫
SQL本地調(diào)用不同數(shù)據(jù)庫的數(shù)據(jù)方法匯總[Access軟件網(wǎng)]
數(shù)據(jù)庫異庫操作(SQL2000)_數(shù)據(jù)庫開發(fā)_web應(yīng)用開發(fā) - snow_xp的日志 -...
經(jīng)典SQL語句大全
經(jīng)典SQL語句大全(絕對的經(jīng)典)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服