Baza de date MySQL Encoding - cum să-l recunoască și de ce este nevoie
De ce codifica baza de date?
Vreau doar să vă asigur că nu avem nici o „băutură“ de bază acolo. Prin urmare, această codificare nu este legată de utilizarea excesivă a băuturilor „imbatator“. Dimpotrivă, toate bazei de date sunt codificate pentru utilizatori (de exemplu, tu și eu) sunt în măsură să citească informațiile conținute în ele. Este clar că nu este clar, și nici o jumătate de litru nu se poate spune? . Hai să facem fără ea până la o ultimă soluție. Voi explica totul acum!

Cadrul YII2. Dezvoltarea rapidă a cadrelor moderne PHP
Explorați moderne subtilitățile cadru de dezvoltare web folosind YII2
cod MySQL, precum și orice alte informații în tehnologia informatică, este definită printr-o combinație de unul și de zero biți de formare. Îți amintești? Este elementele de bază ale științei calculator, am plecat toți la școală.
În lume există multe codificări text (combinații de 0 și 1), dar în timpurile moderne, acestea sunt mai mult sau mai puțin standardizate. Deși este posibil acum să se poticnească pe „Abracadabra“, dacă este setat corect codificarea.

În acest stadiu de dezvoltare a World Wide Web este cel mai frecvent tip de codificări 3:
Pentru noi cea mai importantă bază de date MySQL codificate este UTF-8. Acest lucru înseamnă că se folosește Unicode pe 8 biți pentru a reprezenta toate caracterele. Datorită suportului larg al codificării pe web și la nivel de aplicație, puteți fi siguri că înregistrările din baza de date vor fi stocate într-o formă care poate fi citit (fără „Abracadabra“).
În cazul în care să-l caute?
Un pic alerga prin interfața phpMyAdmin. Mergând pe prima pagină a programului, să acorde o atenție la secțiunea „Setări generale“.

Accesând „Codificarea Compararea legătură cu MySQL» seturi, cu care de codificare ar trebui să fie comparat formatul datelor când este conectat la un server de baze de date. În acest program de coajă de codificare poate fi setată manual.
Utilitatile „native“ baza de date (mysqladmin, mysqlimport și altele) care codifică tabele MySQL preluate din setările sistemului de operare al PC-ului. În absența acestora este setată la valoarea implicită. Cel mai adesea, această codificare Latin1.
La conectarea la o bază de date pe partea de client folosind valorile de mai multe variabile de sistem, spune MySQL, ce tip de codificare pentru a utiliza în prelucrarea și afișarea datelor din baza de date.
Variabilele de sistem și valorile lor
Arhitectura MySQL se bazează pe „client-server“. Variabile de sistem (sau mai degrabă valorile lor) utilizate pentru a instala conexiuni client-server și pentru afișarea corectă a tuturor prelucrare a datelor și de a menține sesiunea de rețea.
„Cu toate acestea,“ selectați „variabilă“, pentru a se familiariza cu valorile prescrise ale variabilelor din sistemul de baze de date phpMyAdmin este necesară în ultimul paragraf din meniul de sus.


O listă a tuturor variabilelor (inclusiv cele care sunt necesare pentru a configura codificarea MySQL) pot fi obținute cu ajutorul comenzii afișează variabile.

Cadrul YII2. Dezvoltarea rapidă a cadrelor moderne PHP
Explorați moderne subtilitățile cadru de dezvoltare web folosind YII2

Să ne întoarcem pentru a obține o listă de variabile, și să se concentreze asupra celor care încep cu setul de caractere. O scurtă descriere a celor care pot fi utile:
character_set_client - codificare este specificată, în care datele de pe partea de client va veni.
character_set_connection - setează codarea conexiunii.
Simbolurile character_set_database -Set utilizate în baza de date implicită.
character_set_results - codificare, în care serverul trimite datele către client.
character_set_server -ispolzuemaya implicit pe server.
Aici, înainte de a descrie următorul grup de variabile necesare pentru modul de a învăța de codificare baza de date MySQL, ar trebui să se îngropa în teorie.
Prin codare ne referim la un set de caractere folosite pentru a defini structuri de date (baze de date, tabele, câmpuri). Dar există un astfel de lucru ca „performanță» (colaționare), care corespunde unei anumite limbi și este utilizat pentru compararea și ordonarea înregistrărilor.
De exemplu, există o codare UTF-8. Există mai multe idei într-o singură codificare. Nu puteți compara datele „prezentate“ în diferite seturi de caractere. Acest lucru poate fi efectuat numai într-o singură codificare. 3 variabile ca timp și arată prezentarea.

comparații permiși pentru o anumită codificare în instanța de server curent, puteți afla folosind echipa show-colaționare. De exemplu:

Ierarhia în seturile de caractere de bază de date
Codificarea în MySQL, ca întreaga structură a bazei de date, sunt aranjate ierarhic. Pentru fiecare coloană a tabelului și baza poate fi instalat propriul set de caractere. Dacă nu este specificat, acesta va fi codat în elementul superior al ierarhiei. De exemplu, dacă nu setați codificarea pentru masă, pentru toate zaptsey sa utilizeze setul de caractere specificat pentru baza de date.
Acum, un pic de must și executați o interogare cu care codifică tabelul de informații obțină și toate coloanele sale. În exemplul am folosi un tabel din lume baza de date:

Exemplul arată că tabelul -latin1 codificare MySQL. Să încercăm să-l schimbe folosind comanda ALTER TABLE:
Acum vom arăta din nou CREATE, și să vedem ce se întâmplă:

După cum puteți vedea, codificarea sa schimbat în utf8. Dar asta nu este de ajuns! Noi, victoria cu aripi, ne grăbim să se bazeze pe succesul lor, și de a schimba numele setului de caractere coloană:
Din nou, verificați codarea MySQL:

S-a schimbat la o multitudine predeterminată. Ei bine, suficient pentru ziua de azi! Am fost cu tine noțiunile de bază codificările baze de date MySQL. Cred că minim ar fi de ajuns să nu recurgă la „litroterapii“. Oricum, această „terapie“ este greu să contribuie la rezolvarea oricărei probleme.

Cadrul YII2. Dezvoltarea rapidă a cadrelor moderne PHP
Explorați moderne subtilitățile cadru de dezvoltare web folosind YII2
Cele mai multe știri IT si dezvoltare web pe canalul nostru-Telegram