0

これが過度に単純に見える場合は申し訳ありません。私は、間違いを犯して何時間もかけてそれを見つけて修正するよりも、ばかげた質問をして物事を正しくコーディングする方が良いことに気づきました。

私は弟をクライアント管理システム (PHP / MYSQL) にしました。彼の友人の何人かがそれを見て、それも欲しがりました。だから、一人一人が自分のログイン/パスワードを持つ単一のウェブサイトを作るのは良い考えだと思いました. アカウントにログインすると、クライアントのデータベースのみが表示されます。それは素晴らしいアイデアのように聞こえますが、私は精神的な障害にぶつかっています。

現在、私の兄弟のサイトには、2 つのテーブルを持つ 1 つのデータベースがあり、1 つはログイン情報用 (兄弟がチームにアクセスできるようにするため) で、次にすべてのクライアント情報を保持する実際のデータベースがあります。このモデルに従えば、ログイン情報用のテーブルが 1 つあるデータベースは 1 つしか必要ありませんが、各ユーザーは個々のクライアント用に独自のテーブルを用意する必要があります。つまり、ユーザーがますます増えて、最終的に100の異なるテーブルを持つ単一のデータベースがあるとします。それは大丈夫ですか?彼らのセキュリティの問題はありますか?これについてもっと良い方法はありますか?いくつかのロジックがありませんか?ありがとう。

4

2 に答える 2

1

このモデルに従えば、ログイン情報用のテーブルが 1 つあるデータベースは 1 つしか必要ありませんが、各ユーザーは個々のクライアント用に独自のテーブルを用意する必要があります。

いいえ。単一のクライアント テーブルがあります。その列の 1 つは、ユーザー テーブルの主キーを参照する外部キーになります (クライアントが関連付けられているユーザーを示します)。

(ただし、1 つのクライアントを複数のユーザーに関連付けることができる場合は除きます。その場合は、ジャンクション テーブルを使用します)。

于 2013-02-21T17:38:48.340 に答える
0

最初に、クライアントまたは会社と呼ばれるテーブルを実装できます(すべてのクライアントがそのテーブルの行に入力する必要があります。つまり、あなたの兄弟とあなたのウェブサイトを使用したい他の人/会社を意味します)、およびからのPK DB 内のすべてのテーブルにテーブルを追加する必要があります。

しかし、あなたのウェブサイトが揺れたらどうなるでしょうか? おそらく10000台のクライアントがあり、サーバー(おそらくホスティング)のパフォーマンスがその種のレート転送をサポートしているかどうか、またPK/FKが正常に機能しているかどうかを分析する必要があります。そのときは、クライアントごとに DB と Web サイトを作成する必要があるかもしれません。

于 2013-02-21T17:42:20.820 に答える