• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

jak unieważnić wielkość liter w mysql?

Object Storage Arubacloud
0 głosów
387 wizyt
pytanie zadane 2 grudnia 2020 w SQL, bazy danych przez Igorek Mądrala (6,290 p.)

jak unieważnić wielkość liter w mysql?

bo podczas logowania wielkośc liter nie ma znaczenie, ale podczas zapytania:

SELECT * FROM users WHERE name LIKE '$text%' ORDER BY id DESC

bo jak w bazie danych mam usera "Igorek" i w wyszukiwarke wpisze

"i"

to nie wyświetla sie "Igorek" tylko że nie ma wyników, dopiero gdy wpisze

"I"

działa, jak to naprawić?

 

edit: oczywiście to $name to chodzi o zmienną w php :D

komentarz 2 grudnia 2020 przez JakSky Stary wyjadacz (14,770 p.)
edycja 2 grudnia 2020 przez JakSky
Generalnie powinieneś wykonać normalizację przed zapisem do bazy danych.

Ma to kilka zalet.

Przeszukanie bazy danych jest szybsze.

Unikniesz błędów gdzie masz np. użytkowników z nickiem Adam oraz adam. Może to powodować problemy i doprowadzać do nieporozumień. Np. ktoś może podszywać się pod użytkownika Admin jako admin.

Tak samo powinno się przechowywać email.

Warto też przed zapisaniem danych do bazy danych wykonać normalizację Unicode. Może się tak zdarzyć, że znaki ć i ć nie są równe.
komentarz 2 grudnia 2020 przez Igorek Mądrala (6,290 p.)
normalizacje to znaczy ze np. wszystkich userów zapisywać z dużych liter (ze wszystkie litery duże) ?
1
komentarz 2 grudnia 2020 przez JakSky Stary wyjadacz (14,770 p.)
edycja 2 grudnia 2020 przez JakSky
Tak, możesz też dodać drugą kolumnę z user i tam przechowywać "surowe dane".Po co? Aby wyświetlać użytkownikowi w takim formacie w jakim wpisał podczas rejestracji.

Np. zakładam konto pod nickiem KuBa1

W bazie danych będą dwie kolumny:

User: KuBa1

Oraz UserNormalized: KUBA1
komentarz 2 grudnia 2020 przez Igorek Mądrala (6,290 p.)
dzieki !

1 odpowiedź

0 głosów
odpowiedź 2 grudnia 2020 przez VBService Ekspert (254,260 p.)
edycja 2 grudnia 2020 przez VBService

Case sensitivity in MySQL and MariaDB queries

Poprzez "ustawienie"

Changing the collation

In MySQL, a collation can be set at column level. In other words, each collation may use a different collation (or even different character sets), so this is written in the column definition.

However, most of the times we use the same collation for the whole table, if not for the whole database, or even all databases...

... With this collation, all comparisons are case insensitive ...

... As expected:

  • Letters with different cases match LIKE comparisons.
  • Letters with different cases match = comparisons.
  • A lowercase letter is not less or greater than the corresponding uppercase letter.

Podobne pytania

0 głosów
1 odpowiedź 701 wizyt
0 głosów
2 odpowiedzi 155 wizyt
0 głosów
1 odpowiedź 825 wizyt
pytanie zadane 30 stycznia 2017 w C i C++ przez mmpat Nowicjusz (190 p.)

92,619 zapytań

141,468 odpowiedzi

319,791 komentarzy

62,002 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...