|
|
|
| Здравствуйе. Посоветуйте как лучше реализовать структуру таблицы или таблиц, чтоб можно было использовать метки... есть таблица content - id, category, title, date, text, keywords, user, display - где keywords и есть поле для меток, т.е. если три ключевых слова, то туда и будут записаны эти слова через запятую... вот я и думаю... если там хранить эти словва в тегах, то у меня возникнут трудности с поиском... если ограничить количество слов и создать еще два поля... в общем, ерунда получится...
Помогите разобраться. как лучше реализовать подобную структуру...
P.S. Можно еще отдельную таблицу создать со словами - id, name... и записывать в таблицу с контентом id слов... Если слово новое, то вносить в таблицу со словами... выхватывать ай ди и записать в таблицу с контентом... но и этот вариант слишком мудреный... | |
|
|
|
|
|
|
|
для: Гена V
(13.08.2007 в 13:18)
| | данные через запятую в полях SQL-таблиц хранить не принято.
Обидно ... тема не один раз поднималась, но пока что никто не смог сформулировать ясно задачу.
А ведь наверняка можно было бы помочь... | |
|
|
|
|
|
|
|
для: Trianon
(13.08.2007 в 13:25)
| | а как принято?
я ж еще не совсем еще понимаю структуры баз данных... | |
|
|
|
|
|
|
|
для: Гена V
(13.08.2007 в 13:36)
| | принято заводить по строке в таблице на каждое слово. | |
|
|
|
|
|
|
|
для: Trianon
(13.08.2007 в 13:43)
| | ??????
каждому слову свое поле? | |
|
|
|
|
|
|
|
для: Trianon
(13.08.2007 в 13:43)
| | Иногда приходится и через запятую... :) Когда я открыл тему о использовании поля типа SET,моя проблема так и не решилась.Пришлось поле SET заменить полем TEXT со структурой 'имябита1,имябита2,...имябитаХ',вместо FIND_IN_SET пользовать LOCATE('имябита',имяполя) ,сбрасывать "биты" через REPLACE и т.д. | |
|
|
|
|
|
|
|
для: Ralph
(13.08.2007 в 19:14)
| | >Иногда приходится и через запятую... :)
Иногда - да. Крайне редко.
И Ваш случай не показателен.
Вы просто не смогли довести реализацию до ума. | |
|
|
|
|
|
|
|
для: Trianon
(13.08.2007 в 19:37)
| | Да что вы говорите... :-) Предложите другую реализацию,где можно устанавливать отдельные биты поля SET,не затрагивая остальных битов,не вводя отдельный столбец для каждого подфорума,подновостей...,которых могут быть десятки,и для которых требуется всего лишь бинарное значение да/нет... | |
|
|
|
|
|
|
|
для: Ralph
(13.08.2007 в 21:12)
| | С другой стороны,что есть столбец с данными через запятую-нечто вроде многомерного массива,поле,содержащее в себе еще несколько полей,и работать с ним не намного труднее,чем с другим видом полей | |
|
|
|
|
|
|
|
для: Ralph
(14.08.2007 в 01:05)
| | а мне то как поступить? | |
|
|
|
|
|
|
|
для: Гена V
(14.08.2007 в 09:51)
| | Задача конечно не слишком ясна,но если всего три "ключевых слова",то лучше да-три отдельных поля ,а вот если слов будет хз сколько,лично я делал бы в одном столбце через разделитель | |
|
|
|
|
|
|
|
для: Ralph
(14.08.2007 в 11:54)
| | Понятно... Спасибо | |
|
|
|