Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика ГОС - Full version2.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.11 Mб
Скачать

19. Структурированный язык запросов: назначение, возможности и достоинства. Типовые задачи, решаемые средствами sql. Структура команды sql. Выборка данных.

SQL. НАЗНАЧЕНИЕ, ВОЗМОЖНОСТИ И ДОСТОИНСТВА SQL. ТИПОВЫЕ ЗАДАЧИ, РЕШАЕМЫЕ СРЕДСТВАМИ SQL. SQL – структурированный язык запроса. Основой языка явл. реляционная алгебра. SQL предоставляет пользователю простой и понятный механизм доступа к данным, не связанный с конструированием алгоритмов. Вместо указания того как необходимо действовать пользователь объясняет СУБД, что ему нужно сделать. Появление SQL дало 2 новые возможности: новый уровень абстракции между пользователем и СУБД; типовые задачи, которые решались с каждым языком программирования по своему, теперь реализованы с помощью SQL/ Языка запроса SQL основан на операциях реляционнай алгебры, зн. он ориентирован на работу с множествами. Как и в реляц. алгебре операции над данными явл. отношениями, и результаты – отношениями. SQL предназначен для выполнения операций над таблицами и над данными таблицы. Достоинства: - межплатформенная переносимость; - наличие стандартов; - одобрение и поддержка IBM; - поддержка со стороны Microsoft; - реляционная основа; - высокоуровневая структура; - возможность отношения спец. интерактивных запросов; - обеспечение программного доступа к БД; - возможность различного предоставления данных; - полноценность, как языка для работы с БД; - возможность динамического определения данных. - поддержка архитектуры «клиент - сервер»; - поддержка корпоративных приложений; - расширяемость и поддержка объектно-ориентированных технологий. - возможность доступа к данным в интернете;- интеграция с языком java; - промышленная инфраструктура; ТИПОВЫЕ ЗАДАЧИ: - интерактивное SQL – формирование непосредственно пользователем запроса на языке SQL в интерактивном режиме. - формирование запроса на на SQL в прикладных программах (программный, встроенный, статический, динамический, с использованием библиотек API-интерфейса вызова программ) СТРУКТУРА КОМАНДЫ SQL. ВЫБОРКА ДАННЫХ. ПРИМЕНЕНИЕ АГРЕГАТНЫХ ФУНКЦИЙ И ВЛОЖЕННЫХ ЗАПРОСОВ В ОПЕРАТОРЕ ВЫБОРА. Каждая команда начинается с действия – это ключевое слово, описывающее выполняемую операцию. После действия может следовать одно или несколько предложений. Предложение описывает данные, с которыми работает команда. Каждое предложение начинается с ключевого слова (from, where и т.д.). Имена таблиц, полей и пользователей должны содержать от 1 до 18 символов, начинаться с букв и не содержать пробелов. Оператор SELECT (выбрать) языка SQL является самым важ­ным и самым часто используемым оператором. Он предназначен для выборки информации из таблиц базы данных. Упрощенный синтаксис оператора SELECT выглядит следующим образом. SELECT [DISTINCT] <список атрибутов> FROM <список таблиц> [WHERE <условие выборки>] [ORDER BY <список атрибутов>] [GROUP BY <список атрибутов>] [HAVING <условие>] [UNION <выражение с оператором SELECT>J; В квадратных скобках указаны элементы, которые могут отсутствовать в запросе. Ключевое слово SELECT сообщает базе данных, что данное предложение является запросом на извлечение информации. После слова SELECT через запятую перечисляются наименования полей (список атрибутов), содержимое которых запрашивается. Обязательным ключевым словом в предложении-запросе SELECT является слово FROM (из). За ключевым словом FROM указывается список разделенных запятыми имен таблиц, из ко­торых извлекается информация. Оператор SELECT, вложенный в другие операторы, наз. вложенным. Агрегатные (или их еще называют СТАТИЧЕСКИЕ) функции, позволяют подводить промежуточные итоги оперируя числовыми или иного вида исчислимыми столбцами. Агрегатная функция принимает в качестве аргумента столбец таблицы целиком и возвращает одно значение. SUM() - Вычисляет сумму всех значений находящихся в столбце.

AVG() - Вычисляет среднее всех значений содержащихся в столбце. MIN() - Находит наименьшее среди всех значений содержащихся в столбце. MAX() - Находит наибольшее среди всех значений содержащихся в столбце. COUNT() - Подсчитывает количество значений, содержащихся в столбце. COUNT(*) - Подсчитывает количество строк в таблице результатов запроса. КОМАНДЫ МАНИПУЛИРОВАНИЯ ДАННЫМИ. СОЗДАНИЕ ОБЪЕКТОВ БАЗЫ ДАННЫХ. В SQL для выполнения операций ввода данных в таблицу, их изменения и удаления предназначены три команды языка манипулирования данными (DML). Это команды INSERT (вста­вить), UPDATE (обновить), DELETE (удалить). Команда INSERT осуществляет вставку в таблицу новой  • строки. В простейшем случае она имеет вид: INSERT INTO <имя таблицы> VALUES (<значение>,  <значение>,); При такой записи указанные в скобках после ключевого слова VALUES значения вводятся в поля добавленной в таблицу новой строки в том порядке, в котором соответствующие столб­цы указаны при создании таблицы, то есть в операторе CREATE TABLE. Например, ввод новой строки в таблицу STUDENT может быть осуществлен следующим образом:

INSERT INTO STUDENT VALUES (101,'Иванов','Александр', 200, 3,'Москва1,'6/10/1979', 15); Чтобы такая команда могла быть выполнена, таблица с ука­занным в ней именем (STUDENT) должна быть предварительно определена (создана) командой CREATE TABLE. Если в ка­кое-либо поле необходимо вставить NULL-значение, то оно вво­дится как обычное значение: INSERT INTO STUDENT VALUES (101, 'Иванов', NULL, 200, 3, 'Москва','6/10/1979',  15); В случаях, когда необходимо ввести значения полей в по­рядке, отличном от порядка столбцов, заданного командой CREATE TABLE, или требуется ввести значения не во все столб­цы, следует использовать следующую форму команды INSERT: