2016-06-16 9 views
0

私は継承したシステムの設計が非常に悪く、クリーンアップしようとしています。私はクライアント名を持つ4つの異なるシステムを持っています。どちらも共通のClientIDまたはClientCodeまたはそのようなものはありません。いくつかのシステムでは同じですが、ほとんどの場合、基本的な相違点があります。ダッシュやかっこ、略語、略語などの基本的な違いがあります。過去に「クライアントA」を「ClntA」 "、 問題ない。私の問題は、2つ以上のシステムの相互参照を作成しようとしているときに発生します。複数の組み合わせの相互参照

SystemA、SystemB、SystemC、およびSystemDの列を持つ表を作成できますが、明らかに重複があります。例えば、私が持っている可能性があり:

1クライアントAクライアントAクライアントA CLNT A
2クライアントAクライアントAカスタマーその場合はシステムA、systembの、およびシステムDではCLNT A

がすべて同じであるので、 SystemAからSystemBへのマッピングを調べるために組み合わせを照会すると、2つの結果が得られます。私は、別名がベストアイデアであるかどうかはわかりません。私はMYTABLE

FROM

をDISTINCTシステムA、systembのを選択
     としてビューSysA_SysB_XrefをCREATE

のようなビューを作成について考えているしかし、私はそれがいずれかのに役立ちますわかりません。

これについての基本的な設計についてのヘルプはありますか?

ありがとうございます!

+0

SOUNDEXやファジーマッチングアルゴリズムのようなものを試してみましたが、これはいくつかのケースで役立ちますが、必要なものすべてをカバーしていません。 – mateoc15

答えて

1

新しいシステム全体のClientsテーブルが必要です。たとえば、新しいIDを割り当てるなど、SystemAの名前のコピーから始めます。そして今、SystemAごとにN個のマッピングテーブルを用意しています。新しいIDを付けるために必要に応じて新しいクライアントを追加します。

関連する問題