0

これはおそらく実装の質問のようなものです。リレーショナル データベースを別の種類のデータベースに変換するためのツールをどこで作成すればよいのだろうか。アプローチは何ですか?

たとえば、データと構造をmysqlデータベースからmssqlに変換したい場合。SQL ファイルを解析するために正規表現を使用する必要がありますか? それとも、最初に XML または JSON に変換し、その構造解析から対象のデータベースに変換することはできますか?

mysql を mssql または同様のものに変換するための既存のツールを使用することは、この範囲には含まれません。実際にどのように行われているのか知りたいので。

4

1 に答える 1

0

幅広い質問ですが、一般的に言えば、構造とデータの独自の抽象表現を持つことは良いことです。なぜなら、インポーターとエクスポーターを作成することでシステムを「簡単に」拡張し、実際にコードを少し分離できるからです。リレーショナル データベースの概念を独自の形式に抽象化することによって。

インポーターは、指定されたデータベースを独自の表現に変換することにより、そのデータベースを「リバース エンジニアリング」します (あなたが言うように、xml/json または独自のクエリ言語でさえも、そのほうがよいと思います)。次に、エクスポーターは、フォーマットから要求された SQL ダイアレクトに変換します。正規表現も、「ハードコーディング」されたものもありません。

これにより、システムを拡張し、より多くのソースとターゲットをサポートし、選択した「ターゲット」でサポートされていない「ソース」からの一部の SQL 機能などのエラーを処理することができます。

私の2セント、お役に立てば幸いです!

于 2012-05-22T10:58:14.370 に答える