sql >> Databáze >  >> RDS >> Mysql

Jaký datový typ sloupce bych měl použít pro ukládání velkého množství textu nebo html

Měli byste použít TEXT jak řekli ostatní, ale pokaždé, když použijete TEXT nebo BLOB, existuje několik důležitých rad:oddělte je od základní tabulky protože opravdu zpomalují přístup ke stolu. Představte si následující strukturu:

CREATE TABLE article (
    id INT(10) UNSIGNED,
    title VARCHAR(40),
    author_id INT(10) UNSIGNED,
    created DATETIME,
    modified DATETIME
);

CREATE TABLE article_body (
    id INT(10) UNSIGNED,
    body TEXT
);

Kdykoli uvádíte články, můžete použít article tabulka (posledních 5 článků autora 33):

SELECT id, title FROM article WHERE author_id=33 ORDER BY created DESC LIMIT 5

A když někdo opravdu otevře článek, můžete použít něco jako:

SELECT a.title, ab.body
FROM article AS a
   LEFT JOIN article_body AS ab ON ab.id = a.id
WHERE a.id=82


  1. Chyba při konfiguraci hibernace 5.0.1 a MySQL

  2. použití funkce rownum s> přihlásit oracle

  3. Při ukládání záznamu se nevkládá konkrétní sloupec

  4. Open source nástroj pro vytváření diagramů ER pro mysql