как эффективно хранить информацию пользователя - PullRequest
0 голосов
/ 13 января 2012

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

1 Ответ

0 голосов
/ 13 января 2012

Храните связанную информацию в одной таблице.Если вашим пользователям будет разрешено иметь один адрес, например, вы можете безопасно хранить компоненты адреса в таблице с базовыми данными пользователя (имя пользователя, адрес электронной почты, пароль).Рассмотрим также возможность хранения нескольких адресов или электронных писем для каждого пользователя.В этом случае у вас будет отдельная таблица для адресов с внешним ключом в таблице users, в поле userid.

Пример:

users:

userid INT PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(64) NOT NULL,
password VARCHAR(2048) NOT NULL

user_addresses, разрешение нескольких адресов на пользователя ...

addressid INT PRIMARY KEY AUTO_INCREMENT,
userid INT NOT NULL,
city VARCHAR(2048) NULL,
streetno VARCHAR(2048) NULL,
FOREIGN KEY (userid) REFERENCES users (userid)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...