- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте.
Помогите разметить таблицу меток. Есть пару модулей в локальной системе менеджмента, именно, планирование (todo list), учет, ... Все модули связаны между собой через контексты (FOREIGN KEY) и должны быть дополнительно связаны через метки.
Проблема в следующем. Если в случае с контекстами, я мог сделать FOREIGN KEY на PRIMARY KEY id таблицы contexts для поля INT(10), то в случае с метками такое не проканает (нужна возможность задать больше чем 1 метку). Как максимально логически решить задачу? Чтобы все работало без сторонней помощи, например, PHP (сериализация строки тут же отпадает).
Нужна связующая таблиц с двух столбцов id_tags и id_contexts куда пишем связи contexts с нужными метками. Потом джейним, выбираем и тд.
bay_ebook, а почему таблица tags не может как раз быть этой "связущей"?
bay_ebook, а почему таблица tags не может как раз быть этой "связущей"?
ну насколько я понял вам нужна связь много-ко-многим или один-ко-многим - тут без связующей (третей) таблицы не обойтись. Как еще задать список связей? В случае с php и сериализацией - очень медленно работать будет. А тут ставим индексы и все летает.
bay_ebook, это тоже вариант. Я сейчас сделал связь многих (тегов) к одному. Но это дублирует теги. Даже не знаю что лучше. Дублировать теги или добавлять еще одну таблицу. Кто-то знает?
Я знаю. В первом посте написано "без" сериализации.
bay_ebook, это тоже вариант. Я сейчас сделал связь многих (тегов) к одному. Но это дублирует теги. Даже не знаю что лучше. Дублировать теги или добавлять еще одну таблицу. Кто-то знает?
Поверите моему опыту еще одна таблица с двумя полями обходится намного дешевле, чем дублирование записей.
bay_ebook, в плане производительности или в плане ресурсов? Если что, ОЗУ много.
bay_ebook, в плане производительности или в плане ресурсов? Если что, ОЗУ много.
Скорость. Минус скорее будет то, что придется писать чуть сложнее запросы. А по производительности и ОЗУ будет в плюсе.
Может еще есть какая-то мысль? :)
Может еще есть какая-то мысль?
Реализовать многие-ко-многим по-другому? Наверняка, можно.. но оптимальнее пока ничего не придумали.
ivan-lev, я как раз вашего ответа ждал. Спасибо, поверю на слово. :)