2016-04-25 21 views
1

私は何百ものテーブルを持つデータベースを継承しました。表は、明示的に定義されていない暗黙的なFK関係を持つことがあります。私はすべてのテーブルのためにこれを行うことができるスクリプトやクエリを書くことができるようにしたいと思います。たとえば、テーブルにuser_idというフィールドがある場合、idカラムにusersテーブルとのFK関係があることがわかります。これも実行可能ですか?外部キー関係を一括操作として追加

先進のおかげで、

+0

可能です。テーブルスキーマをファイルに出力し、正規表現を使用して解析します。しかし、手動で行う方が速いかもしれません:) –

答えて

1

はい、可能ですが、私はより多くを探検したいと思います。多くの人々は、特にMySQLの世界では外部キーのないリレーショナルデータベースを設計しています。また、同じスキーマ内の異なる表の列名を再利用します(しばしば最適な結果よりも少ない)。外部キーであると考えられることを同じ方法(同じデータ型、幅、照合/文字セットなど)で再確認できます。

次に、テーブルをテストマシンにコピーし、外部キーを追加するためにALTER TABLESを開始することをお勧めします。地獄のようにテストしてください。

関連する問題