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 думи въз основа на средните критерии.