строку: подстрока с порядковым номером k добавляется в строку, если k-й бит равен 1. Биты рассматриваются в обратном порядке, то есть справа налево. Разделителем подстрок служит запятая. Например, функция MAKE_SET(6,'Я согласен получать новости компании','Я согласен участвовать в опросах','Я согласен участвовать в тестировании продукта') возвращает значение Я согласен участвовать в опросах, Я согласен участвовать в тестировании продукта, поскольку 6 записывается в двоичной системе счисления как 110.

• INSERT('<Строка>',<Позиция>,<Длина подстроки>, '<Замещающая подстрока>').

Функция INSERT() возвращает строку, в которой подстрока, начинающаяся с указанной позиции и состоящая из указанного количества символов, заменена заданной подстрокой. Например, функция INSERT('ООО “Кускус”',6,3,'Кискис') заменяет подстроку Кус строки ООО «Кускус» подстрокой Кискис и возвращает значение ООО «Кискискус».

• REPLACE('<Строка> ','<Замещаемая подстрока>','<Замещающая подстрока>').

Функция REPLACE() возвращает строку, в которой вместо замещаемой подстроки подставлена замещающая. Например, функция REPLACE('Не имей сто рублей, а имей сто друзей','сто','тысячу') возвращает значение Не имей тысячу рублей, а имей тысячу друзей.

• SUBSTR('<Строка>',<Позиция>[,<Длина>]), SUBSTRING('<Строка>',<Позиция>[,<Длина>]), SUBSTR('<Строка>' FROM <Позиция>[ FOR <Длина>]), SUBSTRING('<Строка>' FROM <Позиция>[ FOR <Длина>]).

Возвращают подстроку исходной строки, начинающуюся с указанной позиции. При необходимости можно указать длину получаемой подстроки. Если номер позиции меньше 0, то позиция отсчитывается не от начала строки, а от конца.

Например:

– функция SUBSTR('Семь чудес света',6) возвращает значение чудес света;

– функция SUBSTR('Семь чудес света',6,5) возвращает значение чудес;

– функция SUBSTR('Семь чудес света',-5) возвращает значение света.

• MID('<Строка>',<Позиция>,<Длина>).

Синоним функции SUBSTRING('<Строка>',<Позиция>,<Длина>).

• SUBSTRING_INDEX('<Строка> ','<Подстрока>',<Порядковый номер вхождения>).

Если заданный порядковый номер вхождения больше 0, то функция SUBSTRING_INDEX() находит в исходной строке вхождение указанной подстроки с этим порядковым номером (считая от начала строки) и возвращает часть исходной строки, предшествующую этому вхождению. Если же заданный порядковый номер вхождения меньше 0, то вхождения отсчитываются от конца строки и возвращается часть исходной строки, которая следует за этим вхождением. Например, функция SUBSTRING_INDEX('Семь чудес света',' ',2) возвращает значение Семь чудес (подстроку, предшествующую второму пробелу), а функция SUBSTRING_INDEX('Семь чудес света',' ',-2) возвращает значение чудес света (подстроку, следующую за вторым пробелом).

• LEFT ('<Строка>',<Длина подстроки>).

Функция LEFT() возвращает начальную подстроку исходной строки, состоящую из указанного количества символов. Например, функция LEFT('Генератор',3) возвращает значение Ген.

• RIGHT('<Строка>',<Длина подстроки>).

Функция RIGHT() возвращает подстроку, состоящую из указанного количества последних символов исходной строки. Например, функция RIGHT('Генератор',3) возвращает значение тор.

• LOCATE ('<Подстрока>','<Строка>'[,<Позиция>]).

Функция LOCATE() возвращает позицию, с которой начинается первое вхождение подстроки в строку, или 0, если строка не содержит такой подстроки. При необходимости можно указать позицию в исходной строке, начиная с которой нужно искать вхождение подстроки. Например, функция

• LOCATE('сто','Не имей сто рублей, а имей сто друзей') возвращает значение 9, а функция LOCATE('сто','Не имей сто рублей, а имей сто друзей',20) возвращает значение 28. Регистр символов учитывается только в случае, если хотя бы одна из строк – байтовая (бинарная).

• INSTR('<Строка>','<Подстрока>'), POSITION ('<Подстрока>' IN'<Строка>').

Синонимы функции LOCATE('<Подстрока>', '<Строка>'). Обратите внимание, что порядок аргументов у функций INSTR и LOCATE разный.

• LCASE('<Строка>'), LOWER('<Строка>').

Возвращают строку, приведенную к нижнему регистру. Например, функция LCASE('Крылов') возвращает значение крылов.

• UCASE('<Строка>'), UPPER('<Строка>').

Возвращают строку, приведенную к верхнему регистру. Например, функция UCASE('Крылов') возвращает значение КРЫЛОВ.

• LOAD_FILE('<Путь и имя файла>').

Функция LOAD_FILE() получает в качестве аргумента полный путь и имя файла, расположенного на компьютере, где работает сервер MySQL, и возвращает в виде строки данные, содержащиеся в этом файле. В пути к файлу необходимо использовать прямую косую черту вместо принятой в Windows обратной косой черты.

• LPAD('<Строка> ',<Длина>,'<Символы заполнения>').

Функция LPAD() возвращает строку указанной длины, полученную из исходной строки путем добавления символов заполнения в начале строки (в случае если количество символов в исходной строке меньше указанного) или отбрасывания «лишних» символов (в случае если количество символов в исходной строке больше указанного). Например, функция LPAD ('Крылов',9,'+-') возвращает значение +–+Крылов, а функция LPAD('ООО “Кускус”',9,'+-') возвращает значение ООО «Куск.

• RPAD('<Строка>',<Длина>,'<Символы заполнения> ').

Функция RPAD() аналогична функции LPAD(), только символы заполнения добавляются в конце строки. Например, функция RPAD('Крылов',9,'+-') возвращает значение Крылов+–+, а функция RPAD ('ООО “Кускус”',9,'+-') возвращает значение ООО «Куск.

• LTRIM('<Строка> ').

Функция LTRIM() возвращает строку, полученную из исходной путем удаления начальных пробелов. Например, функция LTRIM(' Крылов ') возвращает значение Крылов .

• RTRIM ('<Строка>').

Функция RTRIM() возвращает строку, полученную из исходной путем удаления пробелов в конце строки. Например, функция RTRIM(' Крылов ') возвращает значение Крылов.

• TRIM([[LEADING, TRAILING или BOTH] ['<Символы заполнения>']FROM ]'<Строка>').

Функция TRIM('<Строка>') возвращает строку, полученную из исходной путем удаления начальных пробелов и пробелов в конце строки. Если необходимо удалить другой символ или последовательность символов, их нужно указать в параметре <Символы заполнения>. Если требуется удалить символы заполнения только в начале строки, укажем параметр LEADING, если только в конце – параметр TRAILING. Например, функция TRIM('+-' FROM '+-+Крылов-+-+-') возвращает значение +Крылов–.

• FORMAT(<Число>,<Количество цифр после запятой>).

Функция FORMAT() округляет число до заданного количества цифр после десятичного разделителя или, наоборот, дополняет число нулями справа до заданного количества цифр после десятичного разделителя, и возвращает это число в виде строки, используя запятую как разделитель тысяч. Например, функция FORMAT(12345.6789,2) возвращает строку 12,345.68.

Итак, мы рассмотрели функции, оперирующие символьными значениями. Подведем теперь итоги третьей главы.

3.6. Резюме

В этой главе вы научились применять операторы и функции для поиска нужных данных в таблицах, а также для вычислений на основе этих данных, в том числе для получения обобщающей информации из таблиц. В следующей главе вы узнаете, как использовать базу данных MySQL в различных веб-приложениях: подключать веб-приложения к базе данных, передавать данные из базы в веб-приложения и сохранять в базе данные из веб- приложений.

Глава 4 Доступ к базе данных из веб- приложений

Данная глава посвящена использованию базы данных MySQL в веб- приложениях, написанных на языках PHP, Perl и Java. При этом мы будем считать, что этими языками программирования вы владеете, и будем рассматривать только операции взаимодействия с базой данных: подключение и отключение, получение и внесение информации. В первую очередь мы рассмотрим совместную работу MySQL и приложений PHP.

4.1. Интерфейс с PHP

В этом разделе мы рассмотрим процесс создания веб-приложения на языке PHP, взаимодействующего с базой данных MySQL. Вначале познакомимся с платформами, на которых возможно создание такого приложения, а затем с функциями языка PHP, обеспечивающими работу с базой данных.

Выбор платформы

Создать свой веб-сайт вы можете либо на собственном сервере, либо на сервере провайдера, предоставляющего услуги веб-хостинга, то есть размещения сайтов. В настоящее время существует огромный выбор услуг хостинга с поддержкой PHP и MySQL, как платных, так и бесплатных, так что вы можете выбрать наиболее подходящее вам предложение. Провайдер хостинга предоставит вам интерфейс для загрузки ваших HTML– и PHP-страниц на его сервер, а также доступ к базе данных MySQL, позволяющий вам управлять собственными таблицами.

Для разработки и тестирования ваших первых PHP/MySQL-приложений необходимо превратить в веб-сервер ваш

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату