Kódolás mysql
Nos. Angry latin1 kódolást nem szem elől, akkor nézze meg a kórházban)))
És a szörnyű csapás rake, ami késett olyan sokáig! A figyelmes olvasó észreveheti, hogy ha egy kísérlet történt kényszeríteni az oszlopot megváltoztatni a kódolás, adatokat tartalmazó latin1, akkor minden rekordot tartalmazó orosz betűk MySQL volt varningov! Ez volt a sírás, hogy a szerver nem tudja, hogyan kell lefordítani adatok latin1 a cp1251, és egy jobb út, mint hogy cserélje ki a karakterek latin1 egy kérdést, amit nem talált :))). Rodd menthetetlenül elveszett, mert most helyett cirill az adatbázis tartalmazza a kérdőjel.
A kérdés elkerülhető lett volna
Tény, hogy a helyzetet, amikor először alávetik a rossz kódolás, gyakran fordul elő. Tünetek lehet azonosítani a következők szerint:
Éppen ezek a változók felelősek az alapértelmezett értéket készletek.
- character_set_client - kódolás, amely adatokat az ügyféltől kapott
- character_set_connection - az alapértelmezett kódolást minden keretében a kapcsolatnak nincs titkosítás
- character_set_database - alapértelmezett kódolást az adatbázisban
- character_set_filesystem - kódolás a fájlrendszer (LOAD DATA INFILE, SELECT INTO OUTFILE, stb).
- character_set_results - kódolás, amelyben az eredmény lesz kiválasztva
- character_set_server - kódolás, ahol a szerver fut
- character_set_system - kódolás, amelyek meghatározott MySQL azonosítók mindig UTF8
- character_sets_dir - mappa kódolások
FONTOS: Ha character_sets_dir helytelenül telepített munka kódolás lesz veszélyben. Ne próbálja megváltoztatni az értékét, ha nem biztos a saját képességeit. Ha Ön rendszergazda telepítése előtt jobban ismeri a kézikönyvben.
A legfontosabb a hétköznapi felhasználók számára a következő változókat: character_set_client, character_set_results, character_set_connection. Mert ők felelősek a bevezetése, az információs kitermelés és létrehozása táblázatok / adatbázisok, ill. Mit tudnak lenni?
Minden ilyen karakterkészletek lehet használni, hogy az ízlése. Általában az orosz nyelvű felhasználók inkább a utf8 vagy cp1251, de valójában nem számít, milyen kódoló tároljuk az adatokat, fontos, hogy azt eredetileg meghatározott rendesen, és az adatokat helyesen megadta.
Beállítás kódolások
Kézi kínál nekünk három lehetőség kódolási feladatokat:
VIGYÁZAT. Az első két lehetőség a munka csak az aktuális kapcsolatban. Ez azt jelenti, hogy a következő alkalommal csatlakozik az összes beállítás visszaáll az eredeti állapotába! Annak érdekében, hogy ne tegye ki a kódolás minden alkalommal meg kell használni a harmadik lehetőség.
1. lehetőség - a nevek
De jobb, ha a kódolás van kialakítva, közvetlenül a mix.
Mi van, ha a bevitt adatok a rossz kódolás
Ha az adatbázis / tábla / data jött létre / készült kódolás más, mint a kívánt, akkor a következőket kell tennie:
Ez az opció alkalmas szinte minden esetben, kivéve néhány speciális helyzetekben, például, amikor az összehasonlítást, az alapértelmezett kiállított, nem helyénvaló bizonyos területeken. Példa - egy olyan területen tárolására egy jelszót kell összehasonlítani a számla nyilvántartást, mivel az alapértelmezett összehasonlítás mutatott érzéketlen.
A helyes módja, hogy működjön együtt a MySQL
Így az ügyfél fut KOI8-R, de az adatok a cp1251, MySQL tud róla, és nem átkódolás menet közben.
Nos, az út:
Válassza ki az adatokat lehet bármilyen kódolást, valamint ahhoz, hogy a legfontosabb dolog - a jogot arra, hogy tájékoztassa a MySQL.