Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 34 Pomógł: 1 Dołączył: 25.12.2007 Ostrzeżenie: (0%)
|
Witam, przesiadam sie z MS SQL na MySQL i dopadaja mnie male problemy...
Kodowanie tabel mam ustawione na 'utf-8'. Nie wiem czemu zapytania SELECT zwracaja dopiero poprawnie dane (do PHP) po zastosowaniu wczesniej:
Do czego sluzy zatem NAMES (skoro mam zdefiniowane kodowanie w tabelach) ? Czy mozna ten parametr ustawic globalnie dla calej bazy aby nie ustawiac go przed kazdym SELECT ? (uwaga: NIE chodzi mi tu o caly serwer bazy) Drugie pytanie jakis sie nasuwa: jakie roznice w dzialaniu maja dwa ponizsze zapisy ?
I jeszcze jeden maly problem z sortowaniem w utf-8. Zauwazylem ze:
w przypadku gdy wyrazy zaczynaja sie np na 's' oraz 'ś' nie sortuje ich w kolejnosci 1) s; 2) ś a uznaje jako s-s i dopiero sortowanie odbywa sie po kolejnej literze... Da sie temu zaradzic? Zauwazylem w Query Managar'ze, ze to zapytan typu SELECT dodawane sa czesto na koncu pojedyncze znaki np:
Jaki skutek to odnosi w MySQL? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 10 Dołączył: 8.11.2006 Skąd: Warszawa Ostrzeżenie: (0%)
|
Jeszcze mała wskazówka do sortowania - jeżeli masz np. tabelę, w której trzymasz dane w wielu językach będziesz czasem chciał je przesortować stosując inne metody porównywania napisów. Musisz to niestety robić jawnie w każdym zapytaniu:
lub
Niestety coś takiego nie wpływa na metodę porównywania napisów przy sortowaniu:
Generalnie najwygodniejszy jest utf8, z domyślnie ustawioną metodą porównywania napisów na tę, której będziesz stosował najczęściej, |
|
|
|
zietek NAMES / CHARACTER SET 4.01.2008, 09:54:29
sticker jakie masz collation na bazie i na tabeli? 4.01.2008, 10:55:53
Indeo Baza może mieć różne kodowania i może w nich popra... 4.01.2008, 11:18:16
zietek Dzieki za wyczepujaca odpowiedz:) Zapytam jeszcze ... 4.01.2008, 11:57:01
Indeo Dokładnie tak! Znowu - kodowanie które trafia ... 4.01.2008, 13:43:39 ![]() ![]() |
|
Aktualny czas: 30.12.2025 - 05:26 |