2016-04-25 28 views
1

我已經繼承了數百個表的數據庫。表格可能有隱含的FK關係,這些關係沒有明確定義。我希望能夠編寫能夠爲所有表執行此操作的腳本或查詢。例如,如果一個表有一個名爲user_id的字段,那麼我們知道與id列上的users表有FK關係。這甚至是可行的嗎?作爲批量操作添加外鍵關係

先進的感謝,

+0

這是可行的。將表模式輸出到文件中並使用正則表達式來解析它。但手動操作可能會更快 –

回答

1

是的,可能,但我想探索更多。許多人設計的關係數據庫沒有外鍵,尤其是在MySQL世界中。同樣,人們在同一模式的不同表格中重複使用列名稱(通常結果不盡理想)。仔細檢查一下你認爲是一個外鍵可以這樣使用(相同的數據類型,寬度,整理/字符集等)。

然後,我會建議你複製表到一個測試機器,並開始做你的ALTER TABLES添加外鍵。像測試一樣。