Книга Поля Дюбуа посвящена одной из самых популярных реляционных систем управления базами данных — MySQL, продукту класса OpenSource, широко применяемому Web-программистами. В книге рассказано, как использовать эту СУБД с максимальной эффективностью и как решать проблемы, возникающие при ее практическом применении. Значительное внимание автор уделяет администрированию данной СУБД, вопросам безопасности при ее применении, созданию приложений в архитектуре «клиент-сервер», а также созданию динамических Web-сайтов, использующих MySQL, с помощью PHP и Perl.
Это же можно сказать об операциях деления и модуля, когда по контексту ожидается целочисленный результат. Нужно помнить, что при вычислениях, в которых задействованы большие значения, такие, что результат может выйти за пределы . Для этого достаточно запустить сервер с параметрами . Однако после этого названия функций рассматриваются как резервные слова. Арифметические операторы Оператор Синтаксис Значение . Обратите особое внимание на оператор . Для выполнения конкатенации строк в . Логические операторы Оператор Синтаксис Значение . Побитовые операции выполняются с применением целых значений типа . Для того чтобы добиться поведения в соответствии с определением операции | | данным . Работа с данными в . Побитовые операторы ОператорСинтаксис Значение а. Этот оператор был впервые введен в версии . Это сделает такую строку чувствительной к регистру при выполнении операций сравнения. Обратите внимание на то, что если первый из приведенных ниже примеров не чувствителен к регистру, то остальные два уже будут чувствительны к регистру. Операторы сравнения Оператор Синтаксис Значение . И если столбец предполагается использовать как в контекстах, чувствительных к регистру, так и наоборот, задайте тип столбца, который не будет реагировать на регистр, чтобы для сравнений, где необходимо иметь чувствительность к регистру, воспользоваться оператором . С другой стороны, сравнивая данные, которые чувствительны к регистру, их необходимо приводить к одному и тому же регистру с помощью оператора . Проверка по образцу позволяет производить выборку значений, не определяя точно всего значения полностью. При проверке по шаблону можно воспользоваться одним из этих операторов, а не . Для того чтобы инвертировать смысл проверки, воспользуйтесь оператором . Два типа проверки по образцу различаются в двух важных аспектах. Выборка по образцу в . Выборка по регулярным выражениям возможна при совпадении шаблона где. Шаблоны, работающие с оператором . Работа с данными в . Любой поиск по шаблону с операндом, имеющим пустое значение . В соответствии с этим стандартом оператор . Шаблон может быть указан в любом месте образца. Для отключения специальной функциональности. Для этого используется оператор . Шаблоны, употребляемые наиболее часто. Это значит, что выражение . Такая процедура работает медленней, чем при сравнении констант. Шаблон проверяется и запоминается во внутреннем представлении при каждом новом изменении значения. Кроме того, регулярные выражения имеют и другие специальные символы. С ними можно познакомиться в приложении В, . Приоритет операций При вычислении выражений интерпретатор СУБД . Одни операции имеют более высокий приоритет и выполняются раньше других. Например, операции умножения и деления имеют самый высокий приоритет, поэтому они будут вычисляться раньше других. Вот два выражения, которые эквивалентны потому, что операции . Результат этих выражений тоже будет идентичен. Он начинается операторами, обладающими высоким приоритетом, и заканчивается операторами, имеющими низкий приоритет. Операторы, представленные в одной строке, имеют равный приоритет. Операторы с высоким приоритетом вычисляются раньше операторов с низким приоритетом. Работа с данными в . Результат может быть далек от ожидаемого. Вот основные принципы, которые позволят вам избе, жать неприятностей в дальнейшем. Исключением являются функции, которые были специально разработаны для работы с пустыми аргументами. Примером такой функции может служить функция . При выполнении операций сортировки пустые значения . При этом они размещаются при сортировке до или после непустых значений, что зависит от версии используемого сервера СУБД . В версиях до . Преобразование типов данных происходит в следующих ситуациях. Для следующего выражения потребуется преобразование типа. Оно состоит из оператора . В данном случае мы имеем дело с арифметической операцией . Таким образом, аргументы должны интерпретироваться как строки, независимо от их первоначального типа. В данном примере в качестве аргументов функция получает перечень чисел. Функция преобразует их в строки и возвращает конкатенацию этих строк. В контексте операций с вещественными числами результатом этого выражения будет . Это значит, что результатом этого выражения будет оператор . Главный принцип преобразования типов заключается в том, что . В зависимости от контекста . Однако значения не всегда могут быть преобразованы из одного типа в другой. Операция преобразования может дать сбой, если она неосуществима. Преобразование данных, которые не похожи на календарные данные, в календарный тип вернет . Это значит, что при преобразовании значения в строку никогда не должно возникать проблем. Работа с данными в . Если в целочисленном контексте используется вещественное значение, значение будет преобразовано . Преобразование в обратном направлении тоже работает. Использование целого числа в качестве вещественного числа не будет ошибкой. Шестнадцатеричные константы рассматриваются как строки в том случае, если контекст однозначно не свидетельствует о том, что это число. Вот как это происходит. Примером таких операторов могут служить арифметические операторы. В качестве операндов они ожидают числа, и операнды преобразуются соответствующим образом. Если таковых в начале строки найдено не будет, то преобразование такой строки вернет значение . До этой версии строки преобразовывались в целые числа с округлением. Операнды должны быть не просто числами, а только целыми числами. Это значит, что такое число, как . Это происходит потому, что при преобразовании в целое число оно возвращает . В других выражениях операторы тоже не могут дать значение . Это значит, что числа, которые округляются до нуля, будут восприняты как . Но операторы сравнения по образцу СУБД . они производят сравнение в соответствии с типом их операндов. Так, выражение, представленное внизу, сравнивает операторы как числа, поскольку оба оператора являются числами.