SQL Server 局域網(wǎng)兩個數(shù)據(jù)庫同步更新
當(dāng)前位置:點晴教程→知識管理交流
→『 技術(shù)文檔交流 』
-- 比如說:在本地 test 數(shù)據(jù)庫 與局域網(wǎng) 245 的 hlldb數(shù)據(jù)庫中 都有一張結(jié)構(gòu)如下的表 t
CREATE TABLE T( id INT, name VARCHAR(20) ); -- 現(xiàn)在假設(shè)當(dāng) 本地 test 數(shù)據(jù)庫 中的 表 t中插入記錄行的同時向 局域網(wǎng) 245 的 hlldb數(shù)據(jù)庫 的表t 插入相同的記錄行, -- 實現(xiàn)如下(用觸發(fā)器實現(xiàn)) -- Step 1 :創(chuàng)建鏈接服務(wù)器、及其登錄授權(quán)(在本地 test數(shù)據(jù)庫執(zhí)行) --創(chuàng)建鏈接服務(wù)器 -- 示例代碼: -- exec sp_addlinkedserver 'ITSV ', ' ', 'SQLOLEDB ', '遠(yuǎn)程服務(wù)器名或ip地址 ' -- exec sp_addlinkedsrvlogin 'ITSV ', 'false ',null, '用戶名 ', '密碼 ' -- 實際操作代碼: exec sp_addlinkedserver 'it245 ', ' ', 'SQLOLEDB ', '192.168.1.245' exec sp_addlinkedsrvlogin 'it245 ', 'false ',null, 'sa', 'go2wan@szty' -- Step 2 :創(chuàng)建觸發(fā)器(在本地 test數(shù)據(jù)庫執(zhí)行) CREATE TRIGGER tr_in_t on [dbo].[t] FOR INSERT AS BEGIN SET NOCOUNT ON SET XACT_ABORT ON DECLARE @id INT, @name VARCHAR(20); SELECT @id=id, @name=name FROM inserted; INSERT INTO it245.hlldb.dbo.t(id,name) VALUES(@id,@name); END INSERT INTO t(id,name) values(1,'luoyoumou1'); -- 如果出現(xiàn)這樣的錯誤:(請參考以下五個網(wǎng)址的文檔)鏈接服務(wù)器"it245"的 OLE DB 訪問接口 "SQLNCLI" 返回了消息 "該伙伴事務(wù)管理器已經(jīng)禁止了它對遠(yuǎn)程/網(wǎng)絡(luò)事務(wù)的支持。"。 -- http://www.newxing.com/Tech/server/Web/msdtc_162.html -- http://blog.pfan.cn/jixian/34117.html -- http://dyuan.blog.sohu.com/16734773.html -- http://sai5d.blog.163.com/blog/static/62225483200901322939411/ -- http://topic.csdn.net/t/20060523/11/4771841.html INSERT INTO t(id,name) values(1,'luoyoumou1'); SELECT * FROM t; SELECT * FROM it245.hlldb.dbo.t; 該文章在 2011/3/3 20:39:25 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |