
Запись операторов sql
Здесь кратко описана структура операторов SQL и представлена система обозначений, которая используется для определения формата различных конструкций языка SQL. Оператор SQL состоит из зарезервированных слов, а также из слов, определяемых пользователем. Зарезервированные слова являются постоянной частью языка SQL и имеют определенное значение. Их следует записывать именно так, как указано в стандарте, и нельзя разбивать на части для переноса из одной строки в другую. Слова, определяемые пользователем, задаются самим пользователем (в соответствии с определенными синтаксическими правилами) и представляют собой имена различных объектов базы данных — таблиц, столбцов, представлений, индексов и т.д. Слова в операторе размещаются в соответствии с установленными синтаксическими правилами. Хотя в стандарте это не указано, многие диалекты языка SQL требуют задания в конце оператора некоторого символа, обозначающего окончание его текста; как правило, с этой целью используется точка с запятой (;).
Большинство компонентов операторов SQL не чувствительно к регистру. Это означает, что могут использоваться любые буквы — как строчные, так и прописные. Одним важным исключением из этого правила являются символьные литералы — данные, которые должны вводиться точно так же, как были введены соответствующие им значения, хранящиеся в базе данных. Например, если в базе данных хранится значение фамилии 'SMITH1' , а в условии поиска указан символьный литерал 'Smith1' , то эта запись не будет найдена.
Поскольку язык SQL имеет свободный формат, отдельные операторы SQL и их последовательности будут иметь более удобный для чтения вид при использовании отступов и выравнивания. Рекомендуется придерживаться следующих правил.
Каждая конструкция в операторе должна начинаться с новой строки.
Начало каждой конструкции должно быть обозначено таким же отступом, что и начало других конструкций оператора.
Если конструкция состоит из нескольких частей, каждая из них должна начинаться с новой строки с некоторым отступом относительно начала конструкции, что будет указывать на их подчиненность.
Для определения формата операторов SQL мы будем применять следующую расширенную форму системы обозначений BNF (Backus Naur Form — форма Бэкуса-Наура).
Прописные буквы будут использоваться для записи зарезервированных слов и должны указываться в операторах точно так же, как это будет показано.
Строчные буквы будут использоваться для записи слов, определяемых пользователем.
Вертикальная черта ( ) указывает на необходимость выбора одного из нескольких приведенных значений, например a | b | с.
Фигурные скобки определяют обязательныйэлемент, например {а}.
Квадратные скобки определяют необязательныйэлемент, например [а].
Многоточие (...) используется для указания необязательной возможности повторения конструкции от нуля до нескольких раз, например {а b}, [с...]. Эта запись означает, что после а или b может следовать от нуля до нескольких повторений с, разделенных запятыми.
На практике для определения структуры базы данных (в основном ее таблиц) используются операторы DDL, а для заполнения этих таблиц данными и выборки из них информации с помощью запросов — операторы DML.
Основные операторы языка SQL DML:
SELECT — выборка данных из базы;
INSERT — вставка данных в таблицу;
UPDATE — обновление данных в таблице;
DELETE — удаление данных из таблицы.