- ベストアンサー
Accessを開発するに当たり
開発する人は。 VBAを熟知している人。 修正をする人は、VBAは全く知らない人。 このような状況の場合。 皆様ならどちらを選択しますか? 尚、システムとしては。 ・テーブルの更新は、複数あります。 ・途中で電源等を切られたくないとか、常識では考えられないような ことをされないように、制限をする予定です。 このシステムを開発する場合。 1.VBA・SQLをフル活用し、仕様書等で極力VBA・SQLの 知識が乏しくても修正とか、何をしているのか、分かるようにする。 2.VBAの使用は、必要最低限度に押さえ、更新・選択・削除等は、 クエリーで行う。 但し、この場合の開発についても、仕様書を作成し、知識が乏しくても何をしているのか、分かるようにする。 また、 ファイルの大きさに関しても、知りたいです。 1で作成した場合と。2で作成した場合。 データは、空の状態で差があるのか? もちろん、フォーム数。テーブルの数。インデックスを 貼るのかどうか? これらによっても、誤差があると思います。 おおよその目安で構いません。 ゴク一般的な意見としてお聞きしたいと思います。 大変に申し訳ありませんが宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
いちおう、ITでメシ食ってる一人です。 使う人が一人の場合は、Accessでもかまわないと思いますが、複数人で同じDBを共用する場合は、SQLServer Expressを強く推奨します。 フロント画面:アクセス バックエンド:SQLServer という構成です。 理由は、Accessの信頼性にあります。 もともとスタンドアロンで利用することを想定されたデータベースソフトであり、複数人で使用する環境でのトラブルは幾度も耳にしているからです。 一方、同じMS製品でも、SQLServerの方が少しは信頼性があります。 一番廉価なExpressでも、基本設計は上位のSQLServerと同じであり、ある程度負荷がかかるような環境にも耐えられるからです。 さて、ご質問の件については、メンテをする人がVBAのスキルがない場合、極力フォームやクエリーだけで運用可能なシステムにするべきでしょう。 VBAを駆使したシステムでは操作性は向上しますが、予期せぬトラブルが発生した場合、対応が難しいからです。 どうしてもPG開発を取り入れたい場合は、仕様書を充実させて、開発した担当者以外のSEやプログラマでも、容易に対応可能な準備を整えるべきかと思います。
その他の回答 (1)
- t-ka
- ベストアンサー率28% (14/50)
私もNO1の方と同感です、バックエンドとフロントエンドに分けた方が良いです、バックエンドRDBMSも色々選べる、フロントは将来的にアクセスに嫌気さしたらjavaに切り替えれる、・・アクセスの何処が嫌いかというと、2~3年位で仕様(例えばファイル形式)を変えてくるからです。その度に検証・変更をしなくてはなりませんサポート要員がいない所ではきついでしょう。当然VBA・SQLをフル活用することになります。なるべくSQL(ストアド)はサーバー側に置き、分析など処理の重い部分はフロント側若しくは別サーバーで処理させます。この場合フロント側のファイルサイズはOLEオブジェクトを多用しない限りなく小さい・・です。サーバのDBファイルサイズは見積もりが必要です。単純には1レコード長×レコード数ですがテストデータで検証(インデックスの効果なども)するのが良いでしょう。管理・運用の方があまり詳しくないとのことですが、投資だと思って解説書を買ってあげてください。やる気があればすぐおぼえれますよ。・・となれば仕様書は一般的なものでよい
お礼
アドバイス、大変にありがとうございます。 そうですね。 私も、本とかまたは、ネットとかで勉強をしました。 まだまだ、沢山覚える事だらけですが、 なんとか、出来るようになりました。 やる気があれば、覚えられますよね。 それと同じですよね。 それには、解説書というか、参考書は、「投資」 その意見には、賛成です。 仕様書は、一般的なものですか。 分かりました。 一応、仕様書的なものは作成した事はあるんです。 でも、本当にその仕様書で平気かな?という 不安はありますけど。 その辺は、内部的な問題ですよね。 貴重なご意見、ありがとうございました。
お礼
ご回答ありがとうございます。 出来れば、PG開発を・・・と思っています。 でも、「極力、避けて欲しい」という要望もあったりで。 クエリとかだと、細かい所の作業が出来ないジレンマがあり、 回答を読んだ今でも、悩んでいます。