7.1 ОСНОВЫ ЯЗЫКА SQL
Язык SQL представляет собой структурированный язык запросов. Это язык, который предостав-
ляет пользователю возможность работать с реляционными базами данных, являющимися наборами
связанной информации, сохраняемой в таблицах. Прежде, чем перейти к описанию самого языка
SQL, еще раз вспомним, что такое реляционные базы данных.
Реляционная база данных представляет собой связанную информацию, сохраняемую в двумер-
ных таблицах. Такой способ хранения информации может напоминать адресную или телефонную
книгу.
В ней имеется большое количество входов, каждый из которых соответствует определенной осо-
бенности. Для каждой такой особенности может быть несколько независимых фрагментов данных,
например имя, телефонный номер и адрес. Предположим, что необходимо сформировать эту адрес-
ную книгу в виде таблицы со строками и столбцами. Каждая строка (называемая также записью)
будет соответствовать определенной сущности, каждый столбец будет содержать значение для ка-
ждого элемента записи (имеющего свой тип данных) – имени, телефонного номера и адреса, пред-
ставляемых в строках. Проектируемая адресная книга могла бы выглядеть следующим образом:
Имя Телефон Адрес
Иванов Иван 333-100 Тамбов, ул. Советская 5, 15
Петров Петр 476-438 Тамбов, ул. Мичуринская 10, 3
Сидоров Олег (203) 233-70 Котовск, ул. Интернациональная 23
То, что получилось, является основой реляционной базы данных, как и было определено в начале
этого обсуждения – а именно, двумерной (с измерениями строка и столбец) таблицей информации.
Однако, реляционные базы данных редко состоят из одной таблицы. Такая таблица меньше, чем
файловая система. Создав несколько таблиц взаимосвязанной информации, можно выполнить более
сложные и мощные операции с имеющимися данными. Мощность базы данных зависит от связей,
которые можно создать между фрагментами информации, а не от самого фрагмента информации.
Язык SQL и предназначен для создания связей между различными данными таблиц базы данных
и предоставления пользователю результатов выполнения операторов в процессе манипулирования
над данными.
Язык SQL является языком интерпретируемым, т.е. для того, чтобы получить возможность вы-
полнять написанные на этом языке команды для получения информации из базы данных, необхо-
димо наличие специального программного обеспечения, которое будет их исполнять (обычно такая
программа называется SQL-сервер). В зависимости от вида программного обеспечения различают
интерактивный и вложенный SQL. Основное отличие этих версий языка проявляется при их ис-
пользовании.
Интерактивный SQL используется для функционирования непосредственно в базе данных. При
этом производится отбор из базы данных и вывод на печать информации сразу после ввода соответ-
ствующей команды.
Вложенный SQL состоит из команд языка SQL, вставляемых в текст программ, написанных на
других языках программирования (например Паскаль или С). В этом случае прикладные программы
становятся более мощными и эффективными. Однако, используя эти языки, приходится иметь дело
со структурой SQL и стилем управления данными, который требует некоторых расширений к инте-
рактивному SQL. Передача SQL команд во вложенный SQL является выдаваемой ("passed off") опе-
рацией для переменных или параметров, используемых программой, в которую они были встроены.
7.2 ТИПЫ ЗАПИСЕЙ
Не все типы значений, которые могут занимать поля таблиц, являются логически одинаковыми.
Наиболее очевидное различие наблюдается между числами и текстом. Так как системы с реляцион-
ной базой данных основываются на связях между фрагментами информации, различные типы дан-