Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да съхранявате тагове в MySQL тагове, едно поле общо или едно поле за всеки маркер?

Мисля, че Много към много връзката ще ви помогне

нещо като

--------             -----------------           ------------
- tags -   <-------> - products_tags - <-------> - products - 
--------             -----------------           ------------

редактиране:

подходът „Много към много“ е по-нормализираният, но мисля, че е най-трудният за прилагане, тъй като в този случай се основава на обединения за получаване на всички тагове за даден „продукт“. предимства:

  1. напълно нормализиран
  2. СУХО :тъй като ако трябва да промените името на маркер, можете да го направите и ще видите промяната навсякъде
  3. и др.

другият подход е да запазите всички тагове в едно поле, разделено с нещо (нека кажем запетая). Тук имате скорост по отношение на получаването на етикетите. просто трябва да разделите етикетите с този разделител и това е всичко. Запазването на маркери също е по-лесно. но не харесвам този подход, защото ако трябва да актуализирате шаблон, трябва да вървите статия по статия, да разделяте, актуализирате и след това да запазвате..



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Работа с PHP сървър и MySQL сървър в различни часови зони

  2. Вземете стойността от базата данни в selecte таг HTML PHP MySQL

  3. избройте всички таблици в база данни с MySQLi

  4. Как да промените нередактируем/генериран код в netbeans

  5. qt 5.8 sql грешка при връзката:QMYSQL драйверът не е зареден на Windows 10