Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: STRTOLOWER в MySQL
 
 автор: Udachix   (15.08.2013 в 12:50)   письмо автору
 
 

В поле nickname записаны ники пользователей.
При регистрации нужно сравнить, не используется ли уже такой ник.
Чтобы не хранить ники в двух полях (nickname, nickname_strtolower) хочу, чтобы проверка свалилась на плечи MySQL, но не уверен в том, что есть возможность найти функцию MySQL схожей с STRTOLOWER. Я прав и всё таки придётся хранить два поля?

Прав
Не прав


результаты опроса (повариантно) (поименно)

  Ответить  
 
 автор: Valick   (15.08.2013 в 16:24)   письмо автору
 
   для: Udachix   (15.08.2013 в 12:50)
 

[NATIONAL] VARCHAR(M) [BINARY]
Строка переменной длины. Примечание: концевые пробелы удаляются при сохранении значения (в этом заключается отличие от спецификации ANSI SQL). Диапазон аргумента M составляет от 0 до 255 символов (от 1 до 255 в версиях, предшествующих MySQL Version 4.0.2). Если не задан атрибут чувствительности к регистру BINARY, то величины VARCHAR сортируются и сравниваются как независимые от регистра.

  Ответить  
 
 автор: Valick   (15.08.2013 в 16:34)   письмо автору
 
   для: Udachix   (15.08.2013 в 12:50)
 

http://dev.mysql.com/doc/refman/5.0/en/string-functions.html

  Ответить  
 
 автор: Valick   (15.08.2013 в 16:35)   письмо автору
 
   для: Udachix   (15.08.2013 в 12:50)
 

LOWER(str)

Returns the string str with all characters changed to lowercase according to the current character set mapping. The default is latin1 (cp1252 West European).

mysql> SELECT LOWER('QUADRATICALLY');
-> 'quadratically'

LOWER() (and UPPER()) are ineffective when applied to binary strings (BINARY, VARBINARY, BLOB). To perform lettercase conversion, convert the string to a nonbinary string:

mysql> SET @str = BINARY 'New York';
mysql> SELECT LOWER(@str), LOWER(CONVERT(@str USING latin1));
+-------------+-----------------------------------+
| LOWER(@str) | LOWER(CONVERT(@str USING latin1)) |
+-------------+-----------------------------------+
| New York | new york |
+-------------+-----------------------------------+

This function is multi-byte safe.

  Ответить  
 
 автор: Sfinks   (15.08.2013 в 22:07)   письмо автору
 
   для: Valick   (15.08.2013 в 16:35)
 

Исчерпывающе =)

  Ответить  
 
 автор: Udachix   (19.08.2013 в 15:26)   письмо автору
 
   для: Valick   (15.08.2013 в 16:35)
 

Да, хороший.

Раз так всё хорошо, может даже стоит надеется на адекватную работу и с кириллицей.

Спасибо.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования