Нет. Во-первых, что если один и тот же пользователь задает два вопроса? Если электронная почта была первичным ключом, то теперь у нас нарушение PK.
Во-вторых, он даже не должен быть частью составного ключа. Что если пользователь изменит свой адрес электронной почты? Тогда у вас будет ужасный каскад изменений, которые необходимо внести в ваши таблицы.
В-третьих, вы должны просто использовать что-то вроде идентификатора с автоинкрементом. Строка (например, адрес электронной почты) будет ужасно неэффективной.
Если вам нужно связать вопрос с конкретным участником, добавьте внешний ключ memberID
в таблицу member
. Таблица ответов должна иметь свой собственный автоматически увеличивающийся идентификатор с внешним ключом questionID
в таблице question
и внешним ключом memberID
в таблице member
, представляющим члена, предоставившего ответ. Etc.
Кстати, вы можете узнать о нормализации базы данных , по крайней мере, до третьей нормальной форме (3NF). Это не пизда, это просто здравый смысл.