Ищете простые идеи о том, как обычно структурированы данные MySQL - PullRequest
0 голосов
/ 04 июня 2011

Я играю с этой идеей, когда я сохранял «журналы» в таблице «LOGS», где каждая строка содержала информацию вроде «id», «title», «logtext», «views», «upvotes», «downotes».... вы получите основную идею.И все это прекрасно работает для отображения журналов на странице, и все это делается в одной таблице, которая хороша и чиста.

Но потом я решил, что хочу попробовать что-то вроде комментариев к этим журналам.Является ли типичным наряду со строкой, сделанной в таблице «LOGS», просто создать новую базу данных в базе данных с ... сказать, что идентификатор этой таблицы может содержать информацию комментариев?Например, имя, текст письма?Я просто думаю, что это будет сумасшествие, когда со временем появятся тысячи таблиц ... когда раньше они действительно представляли собой строки в одной таблице.

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

Я не знаком с "BLOB-объектами". Было бы типично иметь способ разместить все комментарии в одной ячейке или что-то в этом роде?

Ответы [ 2 ]

0 голосов
/ 04 июня 2011

Я думаю, что вы достигаете что-то вроде этого:

TABLE LOGS
| logid | title | views | ...

TABLE COMMENTS
| comid | logid | author | comment | ...

И затем, когда вы выбираете конкретный журнал для отображения, вы также продолжаете получать любые комментарии к этому журналу. Аналогично, когда вы удаляете из LOGS, просто обязательно удаляйте из COMMENTS одновременно ~

Если вы ДЕЙСТВИТЕЛЬНО хотите, чтобы все это было в ОДНОЙ таблице, я рекомендую json_encoding массива комментариев PHP в поле комментариев типа TEXT.

0 голосов
/ 04 июня 2011

Я хотел бы иметь текстовое поле с разделителями (возможно, использовать точку с запятой или колокольчик, что часто не используется в обычном тексте), чтобы разделить, а затем объединить различные текстовые поля из внешнего интерфейса и поместить исключительное поле вбаза данных с именем user_info или комментариями или чем-то еще

...