1

ベンダーがログインして販売履歴を確認できるシンプルなポータルを開発する予定です。(これは表示のみを目的としているため、現時点では書き込み/ロックの問題がないため、SQLite を goto として見ていますが、MySQL になる可能性があります)

ポータルの性質上、VendorA は VendorA の在庫/販売/その他のみを表示でき、他のユーザーの在庫/販売は表示できないことがユーザー権限によって決定されます。私は webapp 開発に慣れていないので、各ベンダーが独自の tbl_vendor_a_sales、tbl_vendor_a_inventory、tbl_vendor_b_sales などの新しいテーブルを取得できるようにテーブルを使用してデータベースを拡張する方が賢明かどうか (?)、または 3 つの大きなテーブルが必要かどうかはわかりません。ベンダーのすべての情報がそこに保存されている (tbl_orders、tbl_sales)?

300 のベンダーのそれぞれが、30,000 未満の販売記録と 50 ~ 200,000 の在庫記録を持っている可能性があります。

必要に応じて集計レポートを簡単に作成できるため、2〜3個の大きなテーブルの後者のルートが最適であると考えていますが、それでも正しい軌道に乗っていることを知りたい.

4

1 に答える 1

1

このようにテーブルを分割することは最適化としては理にかなっているかもしれませんが、パフォーマンスの問題がなく、実際に明確な改善を測定していない限り、これは時期尚早です。

セキュリティについて本当に心配している場合は、各ベンダーのデータを個別のデータベース ファイルに入れ、ベンダー ログインを Web サーバーのユーザー管理と統合し、ファイル アクセス許可を使用して、1 つのベンダーのみが各ファイルにアクセスできるようにすることができます。ただし、Web ホスティングがこれを許可する可能性は低いです。

于 2013-04-07T09:39:40.640 に答える