Содержание
- 2. Соглашение об авторских правах Этот материал предназначен исключительно для зарегистрированных в Интернет-центре КубГУ участников курсов, которые
- 3. © Тищенко А. 2008 Язык SQL Стандартизованный метод доступа к реляционной базе данных и манипулирования хранящимися
- 4. © Тищенко А. 2008 Язык определения данных
- 5. © Тищенко А. 2008 Создание таблицы Команда создания таблицы: CREATE TABLE имя_таблицы ({ | } [,{
- 6. © Тищенко А. 2008 Особенности простейшего определения таблицы в Oracle и SQL Server SELECT TABLE_NAME FROM
- 7. © Тищенко А. 2008 Изменение таблицы в Oracle Возможные действия: добавление (ADD) модификация (MODIFY), удаление (DROP)
- 8. © Тищенко А. 2008 Простейшие типы данных
- 9. © Тищенко А. 2008 Модификация столбца Модифицировать можно тип данных столбца, размер и значение по умолчанию.
- 10. © Тищенко А. 2008 Удаление столбца Пример удаления столбца: ALTER TABLE dept2 DROP COLUMN mgr; Командой
- 11. © Тищенко А. 2008 Удаление таблицы Команда удаления таблицы: DROP TABLE имя_таблицы Пример удаления таблицы: DROP
- 12. © Тищенко А. 2008 Задания Работа в схеме HR/HR Создайте таблицу EMP Увеличьте длину столбца LAST_NAME
- 13. © Тищенко А. 2008 Язык манипулирования данными
- 14. © Тищенко А. 2008 Вставка данных в таблицу Команда INSERT позволяет вставлять строки в таблицу. Синтаксис
- 15. © Тищенко А. 2008 Синтаксис команды изменения данных: UPDATE имя_таблицы|имя_представления [псевдоним] SET столбец=выражение {,столбец=выражение} [WHERE условие];
- 16. © Тищенко А. 2008 Удаление данных из таблицы Для удаления одной или нескольких строк используется команда
- 17. © Тищенко А. 2008 Задания Создайте таблицу MY_EMPLOYEE 2. Добавьте в нее строки, не перечисляя столбцы
- 18. © Тищенко А. 2008 Задания 3. Добавьте в таблицу еще две строки, теперь перечисляя столбцы в
- 19. © Тищенко А. 2008 Выборка данных Простейший вариант команды выборки данных: SELECT *| {[ALL|DISTINCT] столбец [псевдоним],
- 20. © Тищенко А. 2008 Использование команды SELECT Пример выборки данных: SELECT DISTINCT department_id FROM employees; Пример
- 21. © Тищенко А. 2008 Фраза WHERE (1/5) Простейшие условия во фразе WHERE – это условия сравнения:
- 22. © Тищенко А. 2008 Фраза WHERE (2/5) Другие условия сравнения: BETWEEN AND между двумя значениями (включительно),
- 23. © Тищенко А. 2008 Фраза WHERE (3/5) Оператор LIKE проверяет соответствие шаблону Оператор LIKE позволяет искать
- 24. © Тищенко А. 2008 Фраза WHERE (4/5) Логические условия: AND / OR логические связки для объединения
- 25. © Тищенко А. 2008 Фраза WHERE (5/5) Порядок выполнения операторов: Арифметические операторы Оператор конкатенации Условия сравнения
- 26. © Тищенко А. 2008 Фраза ORDER BY Примеры использования фразы ORDER BY: SELECT last_name, job_id, department_id,
- 27. © Тищенко А. 2008 Задания Создайте запрос, который выводит last_name и salary всех работников, зарабатывающих более
- 28. © Тищенко А. 2008 Функции Oracle(1/4) Символьные функции 1) Функции манипуляции регистром Пример работы с функциями
- 29. © Тищенко А. 2008 Функции Oracle(2/4) 2)Функции манипулирования символьными строками
- 30. © Тищенко А. 2008 Функции Oracle(3/4) Числовые функции ABS возвращает абсолютную величину числа BITAND побитовое AND
- 31. © Тищенко А. 2008 Функции Oracle(4/4) Работы с датами Преобразования типов данных Общие Очень часто по
- 32. © Тищенко А. 2008 Соединения Если в SQL-запросе необходимо получить данные из двух или более таблиц,
- 33. © Тищенко А. 2008 Примеры использования соединений CROSS JOIN декартово произведение таблиц: SELECT last_name, department_name FROM
- 34. © Тищенко А. 2008 Примеры использования внешних соединений LEFT OUTER JOIN – извлекает записи, удовлетворяющие условию
- 35. © Тищенко А. 2008 Старые обозначения соединений в Oracle SELECT столбцы FROM таблица1, таблица WHERE условие_соединения
- 36. © Тищенко А. 2008 Старые обозначения внешних соединений в Oracle Внешнее соединение (+) проставляется на той
- 37. © Тищенко А. 2008 Соединение таблицы с собой Если таблица содержит иерархическую структуру, то могут использоваться
- 38. © Тищенко А. 2008 Задания Напишите запрос, отображающий last_name, department_number и department_name для всех работников. Напишите
- 39. © Тищенко А. 2008 Фраза GROUP BY SELECT *| {[DISTINCT] столбец [псевдоним], ..... } FROM {таблица,
- 40. © Тищенко А. 2008 Групповые функции Групповые(агрегатные) функции работают с группой строк и возвращают один результат
- 41. © Тищенко А. 2008 Примеры использования фразы GROUP BY и групповых функций SELECT department_id, AVG(salary) FROM
- 42. © Тищенко А. 2008 Задания 1. Отобразите минимальную, максимальную, суммарную и среднюю зарплату для каждого типа
- 43. © Тищенко А. 2008 Подзапросы Подзапрос - это команда SELECT, вложенная в другую команду SELECT для
- 44. © Тищенко А. 2008 Однострочные подзапросы Однострочный подзапрос возвращает одну строку. С однострочными подзапросами используются однострочные
- 45. © Тищенко А. 2008 Многострочные подзапросы Многострочный подзапрос возвращает несколько строк Операторы сравнения для многострочных подзапросов:
- 46. © Тищенко А. 2008 Многострочные подзапросы Пример использования многострочного подзапроса с оператором сравнения ANY: SELECT employee_id,
- 47. © Тищенко А. 2008 Коррелированные подзапросы Обычный подзапрос выполняется первым, внешний запрос вторым. Коррелирующими называются подзапросы,
- 48. © Тищенко А. 2008 Пример коррелированного подзапроса Найти всех работников, которые получают зарплату выше средней в
- 49. © Тищенко А. 2008 Использование оператора EXISTS Оператор EXISTS проверяет, найдена ли хотя бы одна строка.
- 50. © Тищенко А. 2008 Задания Напишите запрос, отображающий last_name и hire_date всех работников, работающих в том
- 51. © Тищенко А. 2008 Теоретико-множественные операции Поддержка операций пересечения и разности появилась только в SQL Server
- 52. © Тищенко А. 2008 Ограничения целостности Ограничения целостности это условия специального вида, которые должны выполняться для
- 53. © Тищенко А. 2008 Декларативные ограничения целостности (1/3) Создаются, когда создается или изменяется таблица. Определяются на
- 54. © Тищенко А. 2008 Декларативные ограничения целостности (2/3) Добавление декларативного ограничения целостности в существующую таблицу: ALTER
- 55. © Тищенко А. 2008 Декларативные ограничения целостности(3/3) Отключение ограничений целостности: Синтаксис Oracle: ALTER TABLE имя_таблицы DISABLE
- 56. © Тищенко А. 2008 Задания Создайте таблицу EMP Задайте столбцу NAME ограничение NOT NULL Попробуйте вставить
- 57. © Тищенко А. 2008 Представления Представление (View) это виртуальная таблица, сохраняемая в памяти как команда SELECT.
- 58. © Тищенко А. 2008 Создание представлений (Oracle) CREATE [OR REPLACE] [FORCE] VIEW имя_представления [(столбец [, столбец])
- 59. © Тищенко А. 2008 Примеры создания представлений(Oracle) CREATE VIEW salvu50 AS SELECT employee_id ID_NUMBER, last_name NAME,
- 60. © Тищенко А. 2008 Создание представлений(SQL Server) CREATE VIEW [ . ] [ . ] имя_представления
- 61. © Тищенко А. 2008 Примеры создания представлений SQL Server USE AdventureWorks ; GO CREATE VIEW hiredate_view
- 62. © Тищенко А. 2008 Изменение, удаление представления Изменение представления: ORACLE: ALTER VIEW имя_представления COMPILE если представление
- 63. © Тищенко А. 2008 Обновляемые представления Изменяться должна только одна таблица из входящих в представление. Иначе
- 64. © Тищенко А. 2008 Задания 1. Создайте таблицу EMP 2. Создайте таблицу DEPT 3. Создайте представление
- 65. © Тищенко А. 2008 Индексы(Oracle)(1/2) Индекс – это объект схемы, который может ускорить извлечение строк, используя
- 66. © Тищенко А. 2008 Индексы(Oracle)(2/2) Когда создавать индексы: Столбец содержит широкий диапазон значений Столбец содержит большое
- 67. © Тищенко А. 2008 Индексы SQL Server Базовый синтаксис создания индекса: Create [UNIQUE] [CLUSTERED|NONCLUSTERED] INDEX имя_индекса
- 68. © Тищенко А. 2008 Пример создания и удаления индекса в MS SQL сервер. Создание индекса: USE
- 69. © Тищенко А. 2008 Задания Создайте кластеризованный индекс для таблицы EMP на столбец ID Создайте неуникальный
- 70. © Тищенко А. 2008 Последовательности(Oracle)(1/2) Генераторы последовательностей позволяют создавать последовательности уникальных значений CREATE SEQUENCE [пользователь.] имя_последовательности
- 71. © Тищенко А. 2008 Последовательности(Oracle)(2/2) Для генерации очередного значения последовательности используется вызов псевдостолбца NEXTVAL, перед которым
- 72. © Тищенко А. 2008 Свойство IDENTITY В SQL Server нет объекта последовательность. Аналогичную роль играет свойство
- 73. © Тищенко А. 2008 Пользователи Oracle Пользователь характеризуется: Имя пользователя Пароль Привилегии Схема Профиль(ресурсы) CREATE USER
- 74. © Тищенко А. 2008 Пример создания пользователей CREATE USER vasya IDENTIFIED BY vasya; Пример изменения пароля:
- 75. © Тищенко А. 2008 Системные и объектные привилегии Существует два вида привилегий: системные и объектные привилегии.
- 76. © Тищенко А. 2008 Предоставление и изъятие привилегий Предоставление системных привилегий: GRANT привилегия [, privilege…] TO
- 77. © Тищенко А. 2008 Пример предоставления и изъятия привилегий GRANT create session, create table, create sequence,
- 78. © Тищенко А. 2008 Пользователи SQL Server Присоединиться к SQL Server можно только через логин. Если
- 79. © Тищенко А. 2008 Фраза Rollup Расширение к GROUP BY, подсчитывает промежуточные агрегатные значения. Синтаксис фразы
- 80. © Тищенко А. 2008 Пример запроса с Rollup select department_id, job_id, sum(salary) from employees where department_id
- 81. © Тищенко А. 2008 Строки, полученные с помощью ROLLUP Строки, совпадающие со строками, полученными с помощью
- 82. © Тищенко А. 2008 Фраза Cube Подсчитывает промежуточные значения для всех возможных комбинаций выражений в предложении
- 83. © Тищенко А. 2008 Пример запроса с Cube select department_id, job_id, sum(salary) from employees where department_id
- 84. © Тищенко А. 2008 Строки, полученные с помощью CUBE Строки, совпадающие со строками, полученными с помощью
- 85. © Тищенко А. 2008 Работа с иерархиями(Oracle) SELECT [LEVEL], столбец, выражение… FROM таблица [WHERE условия] [START
- 86. © Тищенко А. 2008 Пример иерархического запроса SELECT last_name||' reports to '|| PRIOR last_name "Walk Top
- 88. Скачать презентацию