Создать отдельную таблицу для каждого пользователя для хранения данных или использовать одну таблицу - PullRequest
3 голосов
/ 19 августа 2011

Я знаю, что есть много вопросов, связанных с этим вопросом, но моя проблема Я хочу сделать приложение Password Manager, которое хранит имя хоста, имя пользователя, пароль, заметки и т. д. для каждого пользователя. Я не могу хранить эту информацию в столбце пользователя, так как есть несколько строк для данных каждого пользователя.

Так что в моем случае правильно создать отдельную таблицу для каждого пользователя или я создаю одну таблицу с именем «Host» и добавляю туда все пароли с внешним ключом "username" в качестве первичного ключа в этой таблице. запрос выполняется, отображаются только строки определенного пользователя.

Таблица пользователей: - id: username : электронная почта: пароль: контрольный вопрос: ответ

Таблица хостов: - имя пользователя : s.no.: имя хоста: имя пользователя хоста: пароль: примечания

Какой подход будет более эффективным, и если будет лучше Альтернатива, пожалуйста, дайте мне знать. Я публикую свой вопрос в первый раз после получения много от этого сайта, пожалуйста, извините за мой плохой грамматика.

Ответы [ 2 ]

4 голосов
/ 19 августа 2011

Правильный подход будет выглядеть примерно так:

Users
------
id | username | email | encryptedpassword | security_question | encryptedsecurityanswer

Hosts
------
id | user_id | name | notes 

Создание таблицы для пользователей и хостов.Эти таблицы объединены отношением Users.id к Hosts.user_id.

1 голос
/ 19 августа 2011

Создание таблиц для каждого пользователя - ПЛОХОЙ подход.Если вы собираетесь использовать План A, он будет создавать базу данных OVER HEAD при увеличении числа пользователей.

Используйте План B

 Host Table:-username:s.no.:host name:host username:password:notes
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...