Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MYSQL] wielkosc liter w zapytaniu
Forum PHP.pl > Forum > Przedszkole
lewy87r
Witam,

problem pewnie banalny ;] ale ja nie znalazlem info w necie ;] tu na forum tez ;] albo slabo szukalem albo nie ma tego ;]
a chodzi o to ze chce cos w bazie danych wyszukac po nazwie i zapytanie uwzglednia mi wielkosc liter czyli jak wpisze w wyszukiwarce "przywieszki" to mi nic nie znajdzie a jak wpisze "Przywieszki" to znajdzie ;] (w bazie jest z wielkiej oczywiscie zapisane) co zrobic by zapytanie nie uwzglednialo wielkosc i liter?
Lion_87
może zrób tak aby dane zapisywały się do tabeli z małych liter wstydnis.gif
lewy87r
Gdzies wyczytalem ze mysql standardowo nie widzi wielkosci liter ;] a jednak chyba widzi to znaczy myslalem ze z malej ale to jest bez sensu bo to sa nazwy przedmiotow w sklepie ;] a skrypt robie dla klienta, i takie rozwiazanie bylo by problemem ;]
l0ud
Strzelam tongue.gif

Wyszukiwanie przez LIKE nie zwraca uwagi na wielkość liter. Możesz też spróbować użyć funkcji LOWER() i porównywać z małymi znakami

  1. SELECT * FROM tabela WHERE LOWER(kolumna) = "przywieszki";
lewy87r
no przez like zwracalo mi uwage ;] ale funkcja LOWER rozwiazala calkowicie problem ;] dzieki :*
mls
Standardowo MySQL korzysta z zestawienia znaków z parametrem _ci (case insensitive), np. latin2_general_ci lub utf8_general_ci. PostgreSQL zaś standardowo uwzględnia wielkość znaków. Jeśli więc problem występuje pod MySQLem, to prawdopodobnie wystarczy zmienić kodowanie tabel/bazy danych na jakieś case insensitive.
ryju
Możesz spróbować zmienić sposób porównań dla interesującej cię tabeli:

  1. ALTER TABLE `nazwa_tabeli` CONVERT TO CHARACTER SET latin2 COLLATE latin2_general_ci,
  2. DEFAULT CHARACTER SET latin2 COLLATE latin2_general_ci;
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.