- 相關(guān)推薦
軟件SQL Server復制功能避開(kāi)缺陷的方法
SQL Server的復制分為三種,下面介紹一下這三種復制技術(shù)及其存在的一些缺陷,大家在使用時(shí)可以根據具體的情境選擇適用的復制方法,避開(kāi)這些缺陷的干擾。
1. 快照復制
A每隔一段時(shí)間將B中的相應表中的數據全部刪除,然后將自己相應表中的全部插到B中。此種方式顯然不適合我們的應用,不予考慮。
2. 事務(wù)復制
對A中的每一個(gè)滿(mǎn)足復制條件的事務(wù),每隔一定時(shí)間A都應用到B上,反之亦然。SQL Server 通過(guò)把數據傳給三個(gè)存儲過(guò)程(插入,刪除,修改)進(jìn)行數據的修改,我們可以根據自己的應用改寫(xiě)此存儲過(guò)程。
存在缺陷:如果從A到B的復制條件和從B到A復制條件相同的話(huà),會(huì )產(chǎn)生“踢皮球”的循環(huán)現象。既一系列事務(wù)應用于A(yíng),A會(huì )把這些事務(wù)應用于B,B收到這一系列事務(wù)后,又會(huì )把它應用于A(yíng),……如此循環(huán)。
3. 合并復制
每隔一段時(shí)間,復制將會(huì )把數據庫A,B中需要復制的數據合并一下,使得AB中的數據完全一樣,數據都是AB數據庫中數據的全體數據。如果A和B中數據主鍵有沖突,則根據優(yōu)先級只選其中一條數據。
需要注意:為了區分數據來(lái)自于哪個(gè)地點(diǎn),SQL Server會(huì )將每一個(gè)需要復制的表中另加一個(gè)字段,在編程時(shí)應該注意。
存在缺陷:
SQL Server 每隔一定時(shí)間進(jìn)行一次復制,如果找不到另一臺Server(比如因為網(wǎng)絡(luò )故障,或是另一臺SQL Server沒(méi)有啟動(dòng)),經(jīng)過(guò)n(默認為10)次連接后,它的復制功能將會(huì )down掉,直至有人將復制功能啟動(dòng)。 需要復制的表中如果在復制之前就有數據,在建立復制時(shí)比較麻煩(SQL Server不提供此類(lèi)問(wèn)題的解決方法,需要手動(dòng)完成)。因此,需要復制的表在使用過(guò)程中不能經(jīng)常變動(dòng)表結構。(文/張夢(mèng)強)
【軟件SQL Server復制功能避開(kāi)缺陷的方法】相關(guān)文章:
Sql Server、Access數據排名的實(shí)現方法07-09
有關(guān)清除SQL Server日志的兩種方法07-20
胸肌健身缺陷及方法技巧09-25
用SQLSERVER查詢(xún)正在實(shí)行的SQL的方法08-31
MySQL導出導入SQL文件命令方法10-17
鑄件常見(jiàn)缺陷的產(chǎn)生原因-防止鑄件常見(jiàn)缺陷的方法08-03
OA軟件實(shí)時(shí)考勤功能08-28