2011-01-27 4 views
1

私はthis questionにMS Accessアプリケーションの分割について質問し、おそらくBEのテーブル以外の機能をいくつか残しました。さて、私は再びそれに... :)分割されたMS AccessデータベースのFEまたはBEに特定のコードを配置

私のテーブルのいくつかは決してユーザーによって更新されるようになります。これらのテーブルへのデータフィードは、かなり集中的なコードプロセスであり、毎日実行され、Oracleから抽出したデータを主にマッサージして&というデータをテーブルに書き込みます(Oracleとは非常に異なる構造です)。 Oracleへのリンク。これのコードはすべてモジュール/クラスモジュールにあり、フォームにはありません。 AccessファイルまたはOracleサーバーのスキーマが変更された場合は、絶対に変更する必要があります。

上記を前提として、FEまたはBE?

+0

これらのテーブルをそれぞれのファイルに配置し、更新が行われるたびに圧縮することができます。 – JeffO

答えて

0

私はコードモジュールをFEに入れて、必要に応じてFEのコピーをテスト/開発BEに再リンクすることができます。コードFEは、ユーザーに配布するのと同じアプリケーションFEである必要はありません。

+0

テストに関する良い点。私の頭脳は、たとえそうでないか分かっていても、ストアドプロシージャと同様のやり方でこのようなことを処理しようとしています。 – RolandTumble

+0

私はあなたの意見を見ると思います。クライアント/サーバrdbmsでは、同じデータベース内のコードとデータを混在させるのが自然です。アクセスで、私の衝動はそれらを分離することです。私は分離に過度にコミットするかもしれません。 :-) – HansUp

0

あなたの説明を理解していることはわかりません。一時的な表のように聞こえる、つまりデータが定期的に別のものに置き換えられています。その場合、フロントエンドまたはバックエンド(バックエンドがJet/ACEデータベースの場合)には、そのようなことは望ましくありません。それがここにある場合、このデータは別のバックエンドに属します。

複数のバックエンドへのリンクを管理する場合は、my Reconnect Utilityが便利です。私のアプリケーションはすべてフロントエンドの一部である一時データベースを持っているので、それらのすべてが複数のバックエンドに簡単に再接続できるようにする必要があります(リンクテーブルマネージャは本当に苦しいです)。私のアプリケーションの中には、リンクテーブルが指す4つの異なるターゲットデータベースがあり、私のユーティリティでそれを行う方がはるかに簡単です。しかし、Jet/ACEのバックエンドでしか動作しません(私は他のデータソースの処理をスケッチしましたが、決して完了しませんでした。

+0

これは一時テーブルではありません。 Oracleデータベースには、これは「これは私の状態です」と言うタイムド・メッセージの形式でバージョニング・データが格納されています。私はそれを一連の "これはバージョンが変更されたときに"行に永続的な履歴でマッサージしています。 – RolandTumble

+0

しかし、結果として得られるマッサージされたデータは、永続的なOracleデータに基づいていても、一時表のように聞こえる。 –

関連する問題