Содержание
- 2. SQL (Structured Query Language – структурированный язык запросов) – язык для взаимодействия с БД.
- 4. Типы команд SQL DQL (Data Query Language – язык запросов) – запросы на извлечение данных из
- 5. Типы команд SQL DCL (Data Control Language – язык управления данными) – управление доступом пользователей к
- 6. Основные понятия SQL Структура оператора SQL Директивы описывают действие, выполняемое оператором: SELECT (выбрать), CREATE (создать), INSERT
- 7. Основные понятия SQL Предложение описывает данные, с которыми работает оператор, или содержит уточняющую информацию о действии,
- 8. Основные понятия SQL Комментарии /* и */ − многострочный комментарий -- − однострочный комментарий Типы данных
- 9. Основные понятия SQL CHAR(n) (CHARACTER(n)) – символьная строка фиксированной длины из n символов (0 VARCHAR (n)
- 10. Основные понятия SQL Константы (литералы) Числовые константы: 21, -345, +234,6547 Константы с плавающей запятой: 1.5Е3, -3.14159Е1,
- 11. Основные понятия SQL Встроенные функции CAST (значение AS тип данных) – значение, преобразованное к типу данных
- 12. Запросы на чтение данных. Оператор SELECT Синтаксис оператора SELECT SELECT [ALL | DISTINCT] список_возвращаемых_столбцов|* FROM список_имен_таблиц
- 13. Запросы на чтение данных. Оператор SELECT Схема БД (для примеров)
- 14. Запросы на чтение данных. Оператор SELECT 1. Цель запроса. Предложение SELECT Предложение SELECT cодержит список возвращаемых
- 15. Запросы на чтение данных. Оператор SELECT для вывода всех столбцов таблицы, указанной в предложении FROM, можно
- 16. Запросы на чтение данных. Оператор SELECT уточнение имен столбцов путем указания полного имени столбца: имя_таблицы.имя_столбца. Пример:
- 17. Запросы на чтение данных. Оператор SELECT 1.2 Исключение повторяющихся строк Для исключения повторяющихся строк из результирующей
- 18. Запросы на чтение данных. Оператор SELECT 1.3 Использование вычисляемых выражений Пример. Вывести фамилии студентов, размер их
- 19. Запросы на чтение данных. Оператор SELECT 1.4 Переопределение имен результирующих столбцов Для переопределения имени результирующего столбца
- 20. Запросы на чтение данных. Оператор SELECT 1.5 Включение текста в результат запроса В предложении SELECT кроме
- 21. Запросы на чтение данных. Оператор SELECT 2. Используемые таблицы. Предложение FROM Предложение FROM cодержит список имен
- 22. Запросы на чтение данных. Оператор SELECT 3. Отбор строк. Предложение WHERE Предложение WHERE состоит из ключевого
- 23. Запросы на чтение данных. Оператор SELECT 3.1 Условия отбора строк Сравнение Выражение1 =| | | =
- 24. Запросы на чтение данных. Оператор SELECT Проверка на принадлежность диапазону значений (BETWEEN) проверяемое_выражение [NOT] BETWEEN минимум
- 25. Запросы на чтение данных. Оператор SELECT Проверка на принадлежность множеству (IN) проверяемое_выражение [NOT] IN (набор_констант) Пример.
- 26. Запросы на чтение данных. Оператор SELECT Проверка на соответствие шаблону (LIKE) имя_столбца [NOT] LIKE шаблон [ESCAPE
- 27. Запросы на чтение данных. Оператор SELECT _ (символ подчеркивания) – совпадает с любым отдельным символом. Пример.
- 28. Запросы на чтение данных. Оператор SELECT символ пропуска используется для проверки наличия в строках символов, использующихся
- 29. Запросы на чтение данных. Оператор SELECT Проверка на равенство значению NULL (IS NULL) имя_столбца IS [NOT]
- 30. Запросы на чтение данных. Оператор SELECT Составные условия поиска (AND, OR и NOT) WHERE [NOT] условие_поиска
- 31. Запросы с многими таблицами Естественное соединение таблиц Объединенную таблицу образуют пары тех строк из различных таблиц,
- 32. Запросы с многими таблицами Запросы с самообъединением таблиц В SQL для объединения таблицы с самой собой
- 33. Запросы с многими таблицами Соединение таблиц может осуществляться и по условиям, отличным от равенства: SELECT атр1,
- 34. Агрегатные функции Агрегатная функция принимает в качестве аргумента какой-либо столбец данных целиком, а возвращает одно значение,
- 35. Агрегатные функции MAX(выражение | имя_столбца) – наибольшее среди всех значений COUNT([DISTINCT] имя_столбца) – подсчитывает количество значений,
- 36. Агрегатные функции Пример 1. Найти суммарное, среднее, минимальное и максимальное значение стипендии студентов. SELECT SUM(stStipend) AS
- 37. Сортировка результатов запроса. Предложение ORDER BY ORDER BY имя_столбца [ASC | DESC], … где, ASC –
- 38. Запросы с группировкой. Предложение GROUP BY Использование фразы GROUP BY позволяет сгруппировать строки в группы, имеющие
- 39. Запросы с группировкой. Предложение GROUP BY Пример 1. Получить список студентов и их средний балл. SELECT
- 40. Запросы с группировкой. Предложение GROUP BY Несколько столбцов группировки Пример. Получить список студентов и их средний
- 41. Запросы с группировкой. Предложение GROUP BY Условия поиска групп. Предложение HAVING Предложение HAVING, используемое совместно с
- 42. Вложенные запросы Вложенным запросом (подзапросом) называется запрос, содержащийся в предложении WHERE или HAVING другого оператора SQL.
- 43. Вложенные запросы Коррелируемым подзапросом называется подзапрос, который содержит ссылку на столбцы таблицы внешнего запроса. Пример 2.
- 44. Вложенные запросы Особенности вложенных запросов: вложенный запрос всегда заключается в круглые скобки; таблица результатов вложенного запроса
- 45. Квантор существования EXISTS В языке SQL предикат с квантором существования представляется выражением вида: [NOT] EXISTS (SELECT…FROM…WHERE…),
- 46. Многократное сравнение ANY и ALL Синтаксис многократного сравнения: проверяемое_выражение = | | | >= ANY |
- 47. Квантор общности ALL в языке SQL Пример. Получить список студентов, получающих стипендию большую, чем любой из
- 48. Квантор ANY (SOME) в языке SQL Пример. Найти студентов университета, день рождения которых совпадает с днем
- 49. Внутреннее соединение таблиц (INNER JOIN) INNER JOIN Пример. Вывести список студентов, и названия групп, в которых
- 50. Внутреннее соединение таблиц (INNER JOIN) Если таблицы нужно соединить по равенству столбцов с одинаковыми именами, то
- 51. Внешнее соединение таблиц (OUTER JOIN) В SQL-92 поддерживается понятие внешнего соединения двух типов: левостороннее (LEFT OUTER
- 52. Внешнее соединение таблиц (OUTER JOIN) LEFT OUTER JOIN
- 53. Внешнее соединение таблиц (OUTER JOIN) SELECT Students.stName, Groups.grName FROM Students LEFT OUTER JOIN Groups ON Students.grNum
- 54. Внешнее соединение таблиц (OUTER JOIN) RIGHT OUTER JOIN
- 55. Внешнее соединение таблиц (OUTER JOIN) SELECT Students.stName, Groups.grName FROM Students RIGHT OUTER JOIN Groups ON Students.grNum
- 56. Предложение SELECT INTO Для сохранения результатов SQL-запроса можно использовать новую таблицу. В этом случае синтаксис операции
- 57. Операции модификации данных (DML) Для модификации данных используются три оператора: INSERT, DELETE и UPDATE. Добавление строки
- 58. Операции модификации данных (DML) При добавлении значений во все столбцы таблицы список столбцов можно не писать:
- 59. Операции модификации данных (DML) 2. Удаление строк из таблицы БД осуществляется с помощью оператора DELETE (удалить):
- 60. Операции модификации данных (DML) 3. Обновление значения одного или нескольких столбцов в выбранных строках одной таблицы
- 61. Операции определения данных (DDL) Команды DDL: CREATE – создает объект БД; ALTER – изменяет определение существующего
- 62. Определение таблиц 1. Создание таблиц с помощью языка SQL Для создания таблицы в языке SQL используется
- 63. Определение таблиц Ограничения: PRIMARY KEY – определение первичного ключа таблицы; UNIQUE – обеспечение уникальности значений в
- 64. Определение таблиц Пример: CREATE TABLE student ( numZach integer CONSTRAINT pkSt PRIMARY KEY, fio char(30), stipend
- 65. Определение таблиц 2. Изменение таблиц. Оператор ALTER TABLE ALTER TABLE имя_таблицы ADD определение_столбца ALTER имя_столбца SET
- 66. Определение таблиц Пример. Добавить первичный ключ в таблицу student ALTER TABLE student ADD CONSTRAINT “pk” PRIMARY
- 67. Определение таблиц 3. Удаление таблицы Для удаления таблицы из БД в языке SQL используется оператор DROP
- 68. Представления Представление – это виртуальная таблица, которая актуализируется в результате выполнения указанного запроса на выборку данных.
- 69. Представления Пример. Создать представление, содержащее список студентов группы КИ-121. CREATE VIEW GroupKI121 (Name) AS SELECT stName
- 70. Представления Удаление представлений DROP VIEW имя_представления Пример. DROP VIEW GroupKI121 Примечание. Удаление представления не означает удаления
- 71. Представления Модификация данных через представления Представление модифицируемое, если относительно него можно использовать все три команды –
- 72. Представления список фразы SELECT должен содержать только имена столбцов; представление не должно содержать предложений GROUP BY
- 73. Представления Модификация представлений в PostgreSQL. Оператор CREATE RULE Синтаксис: CREATE [ OR REPLACE ] RULE имя_правила
- 74. Представления Пример. Создать представление, содержащие данные о студентах, получающих стипендию. Создать правило, изменяющее данное представление. CREATE
- 75. Представления CREATE OR REPLACE RULE upd AS ON UPDATE TO stStip DO INSTEAD (UPDATE students SET
- 76. Хранимые процедуры Хранимая процедура (Stored Procedure, SP) – набор заранее скомпилированных операторов SQL и операторов управления
- 77. Хранимые процедуры 2. Использование SP SP используются во всех случаях, когда необходимо получить максимальное быстродействие и
- 78. Хранимые процедуры SP используются в качестве механизма защиты: если нельзя предоставлять прямой доступ пользователям к таблицам
- 79. Хранимые процедуры 3. Средства реализации хранимых процедур в промышленных СУБД
- 80. Хранимые процедуры 4. Хранимые процедуры в PostgreSQL Хранимая процедура в PostgreSQL называется функцией. Для создания функций
- 81. Хранимые процедуры Вызов функции: SELECT * FROM имя_функции([параметр, …]);
- 82. Хранимые процедуры Пример 1. Добавить сведения о новом студенте. Эта функция c несколькими входными параметрами, не
- 83. Хранимые процедуры Вызов функции: SELECT * FROM "setStudent"(958977, 'Иванов', …);
- 84. Хранимые процедуры Пример 2. Подсчитать сумму затрат на стипендию всех студентов. Функция без входных параметров. Возвращает
- 85. Триггеры Триггер (trigger) базы данных – это хранимая процедура особого типа, которая вызывается автоматически при наступлении
- 86. Описание и программирование триггера в PostgreSQL Синтаксис определения триггера в PostgreSQL: CREATE TRIGGER имя_триггера время_инициирования_триггера событие_триггера
- 87. Описание и программирование триггера в PostgreSQL событие_триггера:: INSERT | DELETE | UPDATE [OF список_столбцов] уровень_триггера указывает,
- 88. Описание и программирование триггера в PostgreSQL условие_триггера – логическое выражение, истинность которого разрешает выполнять триггерную функцию
- 89. Описание и программирование триггера в PostgreSQL Во время работы триггера доступны специальные переменные: OLD – запись
- 90. Описание и программирование триггера в PostgreSQL Удаление триггера DROP TRIGGER имя_триггера
- 91. Описание и программирование триггера в PostgreSQL Пример. При добавлении записи в таблицу Marks БД «Деканат ВУЗа»
- 92. Описание и программирование триггера в PostgreSQL Триггер: CREATE TRIGGER change_StSrBall AFTER INSERT ON Marks FOR EACH
- 93. Привилегии. Директивы GRANT и REVOKE GRANT (допуск) REVOKE (отмена) Привилегии для таблиц и представлений (SQL1): SELECT
- 94. Привилегии. Директивы GRANT и REVOKE Привилегии для таблиц и представлений (SQL2): привилегии стандарта SQL1 INSERT –
- 95. Привилегии. Директивы GRANT и REVOKE Синтаксис GRANT: GRANT {SELECT|INSERT|DELETE|(UPDATE столбец, …)},… ON таблица ТО {пользователь |
- 97. Скачать презентацию