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

VARCHAR vs TEXT v MySQL

Dlouhý VARCHAR se ukládá stejným způsobem jako TEXT /BLOB pole v InnoDB (předpokládám, že používáte pro transakční, referenční integritu a obnovu po havárii, že?) - tedy externě ke zbytku tabulky na disku (což může vyžadovat další čtení z disku k načtení).

zdroj

Pokud nepotřebujete indexovat tyto sloupce (v takovém případě VARCHAR je mnohem rychlejší) není důvod používat VARCHAR přes TEXT pro dlouhá pole – v MySQL jsou určité optimalizace specifické pro motor vyladit načítání dat podle délky a měli byste použít správný typ sloupce, abyste toho využili.

V případě, že používáte MyISAM podrobná diskuse na toto téma je zde .



  1. dotaz Oracle SQL pro výpis všech dat předchozího měsíce

  2. Nomenklatura a architektura produktů IRI

  3. ROW_NUMBER() v MySQL

  4. Driver.getConnection se zablokuje pomocí ovladače SQLServer a Java 1.6.0_29