Уроки PHP, веб-студия
LIDERIT.ru
PHP без БД и MySQL
Переменные:
Массивы:
Функции:
Передача переменных
Глобальный массив
Инструкция INCLUDE
Типы SQL-операторов. Общий подход
SQL поддерживает много различных типов операторов и что многие из этих операторов имеют ряд опций.
Обычно SQL- операторы делятся на три категории:
операторы DDL (Data Definition Language - язык описания данных);
операторы DML (Data Manipulation Language - язык управления данными);
операторы DCL (Data Control Language - язык управления доступом к данным).
Использование операторов DDL
В MySQL операторы DDL создают, изменяют и удаляют структуры данных в базе. Позволяют делать следующее:Использование операторов DML
В отличие от DDL- операторов, DML- операторы больше касаются данных, которые хранятся в базе, чем структуры самой базы. Например, DDL- операторы можно применять для запроса информации из базы данных, а также для вставки, обновления и удаления данных. Позволяют выполнять перечисленные ниже действия.Чаще всего из всех DML- операторов используется оператор SELECT, который позволяет извлекать данные из одной или более таблиц в базе. Каждый раз, когда вы будете отправлять запрос в базу данных, вы будете использовать оператор SELECT. Оператор SELECT может быть как очень простым, так и очень сложным, что зависит от типа данных, которые требуется извлечь, и степени, о которой вы хотите сузить свой поиск.
Следующий оператор SELECT извлекает данные из таблицы Parts.
/* Извлекает данные о частях, значение в столбце CatID которых меньше 600 */
SELECT PartName, PartID, CatID
FROM Parts
WHERE CatID < 600
ORDER BY PartName;
Первая строка - это просто комментарий, описывающий предназначение представленного кода.
Сам оператор начинается со второй строки и состоит из четырех конструкций, каждая из которых расположена в отдельной строке.
Конструкция - это просто раздел оператора. Конструкция обычно начинается с ключевого слова. Например, в данном операторе SELECT первой конструкцией является SELECT.
Упомянутая конструкция всегда будет первой в любом операторе SELECT.
Эта конструкция указывает, какие столбцы должны быть включены в запрос.
В приведенном примере она указывает, что данные должны извлекаться из столбцов PartName (Название части), PartID (Идентификационный номер части) и CatID (Идентификационный номер категории)/
За ней идет конструкция FROM, которая указывает, какая таблица или таблицы должны быть включены в запрос.
Конструкция WHERE уточняет запрос посредством содержащихся в ней условий.
В данном случае содержащееся в ней условие, которое состоит из имени столбца (CatID), операции "меньше" (<) и числа (600), указывает, что в результаты запроса должны включаться только те строки, значение в столбце CatID
которых меньше 600. Последняя конструкция - ORDER BY - определяет порядок, в котором должны быть отсортированы данные в результирующем наборе запроса.
В данном операторе SELECT она определяет, что результаты запроса должны быть отсортированы в алфавитном порядке на основании значений в столбце PartName.
Этот оператор SELECT был приведен исключительно для того, чтобы в общем продемонстрировать, как может выглядеть DML-onepamop. Думать обо всех остальных компонентах оператора SELECT и других DML-onepamopax вам пока не нужно.
Оператор SELECT- это сложный оператор, который может содержать огромное количество различных опций и иметь разную структуру.
Показанный в этом примере оператор SELECT - этот только один тип DML-oneратора. MySQL позволяет использовать DML-операторы также и для вставки, обновления и удаления данных.
Использование операторов DCL
Использование операторов DCL
Если DDL- операторы определять структуру базы данных MySQL, DML-операторы - получать доступ к данным в базе и управлять ими, то операторы DCL позволяют управлять доступом к базе данных: В частности, DCL-операторы позволяют выполнять следующие действия.
Когда вы предоставляете доступ к базе данных, это можно делать только для каких-то определенных таблиц и только с какими-то конкретными привилегиями. То есть вы можете указать точный уровень доступа, который должен быть у каждого пользователя или группы пользователей к тем или иным данным. Например, ниже показан оператор GRANT, который предоставляет привилегии учетной записи ethan.
/* Предоставляет привилегии пользователю ethan */GRANT SELECT, INSERT
ON test.parts
TO ethan@localhost
IDENTIFIED BY 'pw1';
Этот оператор состоит из четырех конструкций. Конструкция GRANT предоставляет пользователю привилегии SELECT и INSERT. Это означает, что данному пользователю разрешается выполнять в указанной базе данных операторы SELECT и INSERT. Никаких других привилегий ему не предоставляется.
За конструкцией GRANT следует конструкция ON, которая указывает, что данному пользователю разрешается получать доступ только к таблице Parts, которая находится в базе данных test. База данных test - это образец базы данных, который устанавливается по умолчанию во время инсталляции MySQL. Вы можете использовать эту базу данных для тестирования установки и приобретения навыков работы с продуктом.
Далее идет конструкция ТО, которая указывает, какой учетной записи предоставляются привилегии. В данном случае привилегии предоставляются учетной записи ethan. Суффикс @localhost означает, что учетной записи ethan разрешено получать доступ к таблице Parts только с локального компьютера. Сам доступ может предоставляться этой учетной записи с любого другого компьютера. Кроме того, если учетной записи ethan еще не существует, она создается.
И, наконец, последней конструкцией в данном операторе GRANT указана IDENTIFIED BY. Эта конструкция присваивает учетной записи пароль, который в данном случае выглядит как pwl.
ВЫВОД: Оператор SELECT, как правило, возвращает строки данных, тогда как все остальные возвращают только сообщение, информируют о том, успешно или неудачно прошло их выполнение.
Кратко о SGL
Операторы
Ещё о SGL...
PHP+MySQL
Создаем БД и таблицы
Cоединяемся с БД
Вставка данных
Выборка данных
Вывод данных
Обновление данных
Операции в SQL
Функции в SQL
Экспорт, импорт
Транзакция