Mysql 6
6.2.3.2. Tipuri de date BLOB și TEXT
tip de date BLOB este un obiect binar mare, care poate conține o cantitate variabilă de date. Există 4 variante de acest tip - TINYBLOB. BLOB. MEDIUMBLOB și LONGBLOB. Acesta diferă numai în lungimea maximă a valorilor memorate. A se vedea secțiunea 6.2.6, „cerințele de memorie pentru diferitele tipuri de coloane.“
TEXT tip de date are, de asemenea, o modificare 4 - TINYTEXT. TEXT. MEDIUMTEXT și LONGTEXT. corespunzătoare a spus patru tipuri BLOB și având aceleași cerințe maxime de lungime și de memorie. Singura diferență între tipurile TEXT și BLOB este că sortarea și compararea datelor sensibile efectuate la variabile și BLOB insensibil la cantități TEXT. Cu alte cuvinte, TEXT - este independent de registru BLOB.
Dacă dimensiunea specificată printr-o coloană sau BLOB valori TEXT depășesc lungimea maximă a coloanei, valoarea este trunchiat corespunzător.
În cele mai multe cazuri, coloana TEXT poate fi considerată ca o dimensiune VARCHAR nelimitat. Și, în mod similar, BLOB - ca o coloană de tip VARCHAR BINARY. Diferențele cu următorul text:
Coloanele de tip BLOB și TEXT pot fi indexate în versiunea de MySQL 3.23.2 sau mai nou. Versiunile mai vechi de MySQL nu a sprijinit indexeze aceste coloane.
Coloanele BLOB și tipurile de text nu a făcut îndepărtarea simbolurilor terminale, așa cum se face pentru tipul coloanei VARCHAR.
Pentru coloanele BLOB și text nu poate fi specificat atributul DEFAULT - valori ale implicit.
În MyODBC Valorile de tip BLOB sunt definite ca TEXT mărime și tip LONGVARBINARY - cum ar fi LONGVARCHAR.
Deoarece BLOB cantitățile și tipurile de text poate fi excesiv de mare, atunci când sunt utilizate, unele limitări utile pentru a oferi:
Pentru a activa utilizarea comenzilor GROUP BY sau ORDER BY coloană într-un BLOB sau TEXT. trebuie să vă convertiți valoarea coloanei într-un obiect cu o lungime fixă. Acest lucru se face de obicei cu ajutorul funcției subșir. De exemplu:
Dacă acest lucru nu se face, operațiunea de sortare în coloana va fi executat numai pentru primul octet, al cărui număr este specificat de max_sort_length. Valoarea implicită a max_sort_length egală cu 1024; această valoare poate fi modificată prin utilizarea -O mysqld serverul parametru la pornire. Gruparea de exprimare, inclusiv o magnitudine BLOB sau TEXT. utilizat cu o poziție coloană sau utilizarea unui alias:
Dimensiunea maximă de tip BLOB sau TEXT obiect definit de tipul său, dar cea mai mare valoare care pot fi transmise efectiv între client și server este limitat la dimensiunea memoriei și de comunicare bufferele disponibile. Puteți modifica dimensiunea unității tampon de transmisie, dar trebuie să se facă atât pe partea de server și de partea de client. A se vedea secțiunea 5.5.2, „Configurarea setărilor serverului.“
Rețineți că reprezentarea internă de orice dimensiune sau tip BLOB TEXT este alocat separat obiect - în contrast cu toate celelalte tipuri de coloane pentru care este alocată memorie pentru o coloană dată când masa este deschisă.