TEXT
обектите с данни, както предполага техният съименник, са полезни за съхранение на дълги текстови низове в MySQL база данни. Четирите TEXT
Типовете обекти с данни са създадени за съхранение и показване на значителни количества информация, за разлика от други типове обекти на данни, които са полезни при задачи като сортиране и търсене на колони или работа с по-малки опции, базирани на конфигурация, за по-голям проект. Различният TEXT
обектите предлагат диапазон от пространство за съхранение от 1 байт до 4 GB и не са предназначени за съхранение на изчислителни стойности. Обичайно е да виждате, че те се използват за съхраняване на описания на продукти за сайт за продажби, обобщения на имоти за база данни за недвижими имоти и текст на статия в дълга форма на уебсайт за новини. TEXT
обектите се използват най-добре, когато VARCHAR
и други обекти с данни, базирани на низове, са недостатъчни, за да се справят със съхраняването на желаното количество информация. Въпреки това, най-малкият TEXT
тип, TINYTEXT
, споделя същата дължина на знака като VARCHAR
. TEXT
обектите се разграничават от другите типове съхранение на низове, като премахват изискването за посочване на дължина на съхранение, не премахват байтове, когато са избрани, и не добавят неизползваното пространство за знаци за ефективно съхранение на диска. Тъй като TEXT
обектите не се съхраняват в паметта на сървъра, те изискват допълнителни данни за извличане. Следните размери предполагат, че базата данни използва UTF-8 кодиране.
TINYTEXT:255 знака - 255 B
TINYTEXT
обектът с данни е най-малкият от TEXT
семейство и е създаден да съхранява ефективно кратки информационни низове. Този тип може да съхранява до 255 байта (изразени като 2^8 -1) или 255 знака и изисква 1 байт надпис. Този обект може да се използва за съхраняване на неща като кратки резюмета, URL връзки и други по-кратки обекти. TINYTEXT
блести над VARCHAR
когато съхранявате данни, които са под 255 знака с непоследователна дължина и не е необходимо да се използват за критерии за сортиране.
ТЕКСТ:65 535 знака - 64 KB
Стандартният TEXT
Обектът с данни е достатъчно способен да обработва типично текстово съдържание в дълга форма. TEXT
обектите с данни достигат най-високата си дължина от 64 KB (изразени като 2^16 -1) или 65 535 знака и изисква 2 байта надпис. Той е достатъчно голям, за да побере текст за нещо като статия, но не би бил достатъчен, за да побере текста на цяла книга.
СРЕДЕН ТЕКСТ:16 777 215 - 16 MB
MEDIUMTEXT
Обектът с данни е полезен за съхраняване на по-големи текстови низове като бели книги, книги и архивиране на код. Тези обекти с данни могат да бъдат големи до 16 MB (изразени като 2^24 -1) или 16 777 215 знака и изискват 3 байта режийно съхранение.
LONGTEXT:4,294,967,295 знака - 4 GB
LONGTEXT
Обектът на данни е за използване в екстремни случаи на използване на съхранение на текстов низ. Това е жизнеспособна опция, когато MEDIUMTEXT
обектът не е достатъчно голям. Компютърните програми и приложения често достигат дължина на текста в LONGTEXT
обхват. Тези обекти с данни могат да бъдат до 4 GB (изразени като 2^32 -1) и да съхраняват до 4 294 967 295 знака с 4 байта режийно съхранение,
TEXT срещу BLOB
BLOB
s са алтернативен тип съхранение на данни, които споделят съвпадащи механизми за именуване и капацитет с TEXT
обекти. Въпреки това, BLOB
s са двоични низове без сортиране на набор от знаци, така че се третират като числови стойности, докато TEXT
обектите се третират като символни низове. Тази диференциация е важна за сортирането на информацията. BLOB
s се използват за съхраняване на файлове с данни като изображения, видеоклипове и изпълними файлове.
Бележки за употреба
- Използване на
TEXT
полетата за заявки за избор и търсене ще доведат до спадове в производителността, тъй като сървърът ще извика обектите поотделно и ще ги сканира по време на заявката, вместо да пейджва данни, съхранявани в паметта. - Активирането на строг SQL ще наложи максималната дължина на знаците и ще съкрати всички въведени данни, които надвишават тези ограничения.
TEXT
колоните изискват дължина на индексния префикс и не могат да иматDEFAULT
стойности, за разлика отCHAR
иVARCHAR
обекти.- Определяне на размера по брой думи:приемете, че средната английска дума е дълга 4,5 букви и се нуждае от 1 допълнителен знак за интервал. Например, сайт, който се състои от статии от 500 думи, ще използва средно около 2750 знака за текстовите данни на статията.
TINYTEXT
Капацитетът от 255 знака е недостатъчен за този случай на употреба, докатоTEXT
Капацитетът на 65535 знака предлага съхранение за статии, които достигат над 11 900 думи въз основа на средните критерии.