none
sqlBulkCopy 問題 RRS feed

  • 問題

  • 請問一下各位先進
    小弟想把DB1與DB2的資料做同步
    所以想到用sqlBulkCopy去做
    不過卻發現當我把DB1.Table1的資料要copy到DB2.Table1的時候卻出現 "違反條件約束 'PK_Table1'。無法在物件 'Table1' 上插入重複索引鍵。"
    請問一下用sqlBulkCopy一定要目的 table 是空的嗎?
    2007年12月19日 上午 06:37

解答

  • 這邊您可以分成兩部分來做,首先把DB1有,但是DB2沒有的資料找出來,然後用sqlBulkCopy新增

    然後再把DB1有,DB2也有的資料做更新。

     

    2007年12月19日 上午 08:43
    版主

所有回覆

  • 不用是空的,您的錯誤是因為索引值重複了

    2007年12月19日 上午 07:31
    版主
  • 那也就是說sqlBulkCopy應該是用Inset
    若Table有的話,那就會出現這問題
    請問有辦法做到沒有才Insert,有的話就update嗎?
    2007年12月19日 上午 08:10
  • 這邊您可以分成兩部分來做,首先把DB1有,但是DB2沒有的資料找出來,然後用sqlBulkCopy新增

    然後再把DB1有,DB2也有的資料做更新。

     

    2007年12月19日 上午 08:43
    版主
  • 這倒是個方法
    感謝啦!!
    2007年12月19日 上午 09:22
  • 小弟發現 VSTS 2008 有 Data Compare 的功能,可以用耶

    不過先決條件記憶體要很大!

    2007年12月31日 上午 01:09