Быстрые советы по проектированию реляционных баз данных для MySQL - PullRequest
0 голосов
/ 14 июля 2009

У меня есть веб-приложение, в котором я создаю информацию о пользователях и их предпочтениях относительно приложения. Стоит ли разделить это на две базы данных? Я думал об одной таблице «пользователи» с полями «id, useridfromFacebook, facebookRealName» (т. 1, 52052025295, Alex McP), а затем у меня есть таблица «предпочтений» с полями «id, useridfromFacebook, электронные письма, цвета, SomeQuoteorSomething» (4 , 52052025295, 1, 441155, 'Only The Good Die Young')

Меня никогда не учили / не учили себя настройке БД, но похоже, что это ограничит нагрузку на базу данных, потому что, когда пользователь проходит проверку подлинности и устанавливает приложение, мне нужно будет только запросить таблицу предпочтений, если (isset ($ fbauthboolean)) или что-то в этом роде.

Мысли? Могу ли я уточнить это?

Спасибо!

Я перепутал слова «база данных» и «таблица» в моей первоначальной публикации. Ред. У меня была бы ОДНА БД с несколькими таблицами, но все они относились к одному и тому же пользователю. Одна таблица содержит данные NAME, а другая таблица будет хранить данные типа PREFERENCES

Ответы [ 2 ]

2 голосов
/ 14 июля 2009

Не думаю, что вам понадобятся две базы данных, но вам могут потребоваться отдельные таблицы в одной схеме.

Мне очень понравилась работа Тоби Теорея "Моделирование и дизайн базы данных" . Посмотрите, согласны ли вы.

Мне также нравится Блог программиста баз данных . Очень полезно, хорошее письмо.

Если вы не хотите покупать книгу, вы можете обратиться в Google для нормализации.

0 голосов
/ 14 июля 2009

Для вашей таблицы предпочтений я бы выбрал что-то вроде

Preferences( pref_id, facebook_id, preference, value)

Где предпочтение отдается некоторому коду, например «Quote», «AboutMe» и т. Д., А значением является строка.

Вы могли бы даже иметь таблицу preference_value со списком 'QUOTE', 'Funny Quote' / 'ABOUTME,' About Me 'и т. Д.

...