- 締切済み
社内DBをデータ連携して可視化する方法
社内で保有している個人情報が入ったDBをデータ連携させる方法を模索しております。 システム構成として以下の2パターンを検討しているのですが、どちらが楽に作れるかしりたいです。 費用面と納期面、構築や更新などの手軽さも含めて、ご意見を頂けないでしょうか? 1.Accessを社内DBと接続させて個人データを可視化するパターン 2.GoogleAppScriptなどのプログラムを使って、Googleスプレッドシートに個人データを表示させるパターン <要件> 社内DBと連携させてスプレッドシート、もしくは、Accessでデータを可視化し、データ情報を編集したときに、DB大本の情報も更新させる仕組みを作りたい <仕様> ・1,000名程度の個人情報データをスプレッドシート、もしくは、Accessで出力する ・項目を書き換え&保存するとDBの元データが書き換わる、もしくは、DBと連携している管理画面に(管理者に)アラートを表示させる 上記以外にもありましたらご教示いただきたいです。 宜しくお願い致します。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- tamu1129
- ベストアンサー率58% (1294/2222)
断然1 そもそもAccessはフロントツールとしては優秀 他のデータベースに接続させて、自分のテーブルデータとして使用する事も可能だし、クエリではなくストアドプロシージャも取り扱う事が出来る なによりレポート機能が使える 問題点はどの方法が優秀なのかって事より、元になるデータベースに接続させる許可が下りるかって所 基幹業務で使っているならなかなかそんな許可が下りないし、そもそも社内使用であるならば元になるデータベースに接続させるフロントエンドは何かしら作りこんでいるので、そのフロントエンドを操作する端末に組み込めばいいだけ 自分がよく言われたのは、ユーザーからこんな機能が欲しいんだが現状のシステムでは出来ないのでなんとかしてくれないかというケース この場合、元のデータベースに接続させてデータの参照する事は許可が下りる事が多いが、更新や削除は許可が下りない(こういった場合でも、元になるデータベース管理者がデータベースに明るい人の時だけ、単に管理者になっている人間はデータベースが壊されるといって参照する事さえ許可をしない) この管理の問題点をクリア出来るなら、データベースをサーバー&クライアント関係で使うなら、Accessはクライアントのフロントエンドで使うには良い選択だと思います
- t_ohta
- ベストアンサー率38% (5238/13705)
2 に関しては社外に個人情報が出ることになるので、プライバシーポリシーの変更や周知、同意が必要になり扱いが大変です。 なので、社内で完結させる方が手間が少なく、リスクが低いんじゃないでしょうか。
- bardfish
- ベストアンサー率28% (5029/17766)
どちらも楽ではありません。 排他制御を行わないと同一のデータを複数人で更新したときに内容が保証されないからです。 Accessの場合はレコード排他ではなくページはいたと言って複数のレコードを纏めて排他ロックするので別のデータの更新ができなくなることがあります。 AccessでRDBMSとリンクテーブルを構築するとなると排他制御がどうなるのかは不透明な部分があります。 RDBMS側でもトリガーを作成して更新したらアラートを出す仕組みというものを構築しなくてはならないでしょう。 運用側が楽をしたければ費用を計上し専門の会社に開発を依頼するのが一番です。 費用と労力は反比例します。 「楽をしたければ金をかけろ、金をかけたくなければ苦労しろ!」ですね。例外はありません。
補足
>bardfishさま ご回答ありがとうございます。bardfishさまの感覚値として、上記の場合、Accessで構築するかスプレッドシートで構築するかどちらのほうがやりやすいかだけ、教えていただけませんでしょうか。