none
請教使用Replication機制時,PK及Identity的處理方式 RRS feed

  • 問題

  • 各位好

    因為目前有一台SQL Server 2000 SP4,已經有設定一般的backup (full,log)
    但因為主管要求希望加強備援機制,因此有提出Replication機制是否可行???

    而目前我在A Server設定發行集(同時也是散發),該DB上有上百個table,其中含有identity的table也有一百多個
    實際到B Server訂閱後才發現,原A Server Table上的Identity及PK都無法複製到B Server的DB上(當然一開始設定發行時就有提醒Identity的問題)

    為了這個Identity的問題,我又查出在table現存欄位上加上Identity時,如果要用T-SQL,必需要借用Temp Table,資料倒過去後,再用Rename的方式
    一般的Alter Table Alter Column 是沒作用的...
    因為含有Identity的Table非常多,必需用程式語法動態處理,所以後來又找出一個SP,傳入table  name後,就可以產生Create Table的Script
    就這樣一直Try下去湊語法,後續才發現不光是Identity不會複製過去,連PK也不會複製過去??

    我了解Replication應該是僅就"資料面"的保護,實際前端AP能否正常運作是另一回事
    不過究章是我Replication設定有誤,還是該機制本身就存在這些問題,查了很多文章似乎都提到必需手動處理PK及Identity
    一般在Replication機制下是如何處理PK及Identity呢???能自動化嗎??
    其他的Constrain也會掉嗎???

    還請各位指點,謝謝


    2009年10月23日 上午 05:58

解答

所有回覆