我剛剛有一位同事向我介紹了來自第三方公司的SQL數據庫。SQL數據庫恢復後的外鍵問題
他們從第三方備份了數據庫,並在我們的辦公室恢復了它。
有一個問題,因爲看起來每個表的所有外鍵都是實際的表屬性,而不是實際的關係。
我以前沒見過這個,想知道是否有人知道它的原始數據源可能是什麼?或者在進行備份時是否存在損壞。
這些傢伙將不得不重新映射所有的關係,作爲一個非常大的模式,這是一個乏味的任務。
*** UPDATE ****
一個例子是這樣的: -
任何幫助,將不勝感激。
我剛剛有一位同事向我介紹了來自第三方公司的SQL數據庫。SQL數據庫恢復後的外鍵問題
他們從第三方備份了數據庫,並在我們的辦公室恢復了它。
有一個問題,因爲看起來每個表的所有外鍵都是實際的表屬性,而不是實際的關係。
我以前沒見過這個,想知道是否有人知道它的原始數據源可能是什麼?或者在進行備份時是否存在損壞。
這些傢伙將不得不重新映射所有的關係,作爲一個非常大的模式,這是一個乏味的任務。
*** UPDATE ****
一個例子是這樣的: -
任何幫助,將不勝感激。
那麼,只是因爲列名以FK開頭並不會使它成爲外鍵。 您確定原始數據庫中存在外鍵約束嗎?
也許他們從未實現約束。當您打開表格時,它們應該在鍵部分下方可見。見下面
圖像取決於你想要達到的目標,有可能是沒有必要重新實現的約束。例如。一些相對較小的只讀查詢也可以工作。只要你開始更新,我寧願有限制。
爲什麼在SQL Server內置時使用第三方工具進行備份,使用SQL Server進行備份,然後恢復,並檢查所有外鍵。 – 2014-11-03 18:06:17
你的意思是「表格屬性而不是實際關係」?像...「tableA.someId = tableB.someId」的隱含關係而沒有實際定義外鍵? – Kritner 2014-11-03 18:20:27
@mr_eclair不使用第三方工具的地方,它是由第三方擁有的sql數據庫。 – Derek 2014-11-03 19:44:13