W Cat - SQL за 24 часа

Тут можно читать онлайн W Cat - SQL за 24 часа - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-db. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    SQL за 24 часа
  • Автор:
  • Жанр:
  • Издательство:
    неизвестно
  • Год:
    неизвестен
  • ISBN:
    нет данных
  • Рейтинг:
    4.5/5. Голосов: 81
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

W Cat - SQL за 24 часа краткое содержание

SQL за 24 часа - описание и краткое содержание, автор W Cat, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

SQL за 24 часа - читать онлайн бесплатно полную версию (весь текст целиком)

SQL за 24 часа - читать книгу онлайн бесплатно, автор W Cat
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

FROM ИМЯ_ТАБЛИЦЫ

[ WHERE ВЫРАЖЕНИЕ1 [, ВЫРАЖЕНИЕ2 ]]

[ WITH CHECK OPTION ]

[ GROUP BY ]

В своем самом простом виде представление строится на основе всех данных таблицы, как в следующем примере.

CREATE VIEW CUSTOMERS AS

SELECT *

FROM CUSTOMER_TBL;

Представление создано.

В следующем примере создаваемое представление должно содержать только указанные столбцы таблицы.

CREATE VIEW EMP_VIEW AS

SELECT LAST_NAME, FIRST_NAME, MIDDLE_NAME

FROM EMPLOYEE_TBL;

Представление создано.

Из следующего примера видно, каким образом в представлении можно преобразовать данные столбцов таблицы. В этом представлении для столбца вывода в операторе SELECT назначается псевдоним NAME.

CREATE VIEW NAMES AS

SELECT LAST_NAME || ', ' || FIRST_HAME || ' ' || MIDDLE_NAME

NAME

FROM EMPLOYEE_TBL;

Представление создано.

Теперь выберем все данные только что созданного представления с именем NAMES.

SELECT *

FROM NAMES;

NAME

--------------

STEPHENS, TINA D

PLEW, LINDA С

GLASS, BRANDON S

GLASS, JACOB

WALLACE, MARIAH

SPURGEON, TIFFANY

6 строк выбраны.

Из следующего примера видно, как создаются представления на основе одной или нескольких таблиц с подведением итогов.

CREATE VIEW CITY_PAY AS

SELECT E.CITY, AVG(P.PAY_RATE) AVG_PAY

FROM EMPLOYEEJTBL E

EMPLOYEE_PAY_TBL P

WHERE E.EMP_ID = P.EMP_ID

GROUP BY E.CITY;

Представление создано.

Теперь выберем данные только что созданного представления.

SELECT *

FROM CITYJPAY;

CITY AVG_PAY

--------------------------

GREENWOOD

INDIANAPOLIS 13.33333

WHITELAND

3 строки выбраны.

После создания представления его использование в операторах SELECT позволяет их значительно упростить.

Создание представления для данных нескольких таблиц

Представление можно создать на базе данных нескольких таблиц, используя связи в операторе SELECT. Опция WITH CHECK OPTION будет обсуждаться немного позже. Синтаксис оператора следующий.

CREATE VIEW ИМЯ_ПРЕДСТАВЛЕНИЯ AS

SELECT * | СТОЛБЕЦ1 [ , СТОЛБЕЦ2 ]

FROM ИМЯ_ТАБЛИЦЫ1, ИМЯ_ТАБЛИЦЫ2 [ , ИМЯ_ТАБЛИЦЫЗ ]

WHERE ИМЯ_ТАБЛИЦЫ1 = ИМЯ_ТАБЛИЦЫ2

[ AND ИМЯ_ТАБЛИЦЫ1 = ИМЯ_ТАБЛИЦЫЗ ]

[ ВЫРАЖЕНИЕ1 ][, ВЫРАЖЕНИЕ2 ]

WITH CHECK OPTION ]

[GROUP BY ]

Вот пример создания представления на основе данных нескольких таблиц.

CREATE VIEW EMPLOYEE_SUMMARY AS

SELECT E.EMP_ID, E.LAST_NAME, P.POSITION, P.DATE_HIRE,

P. PAY_RATE

FROM EMPLOYEEJTBL E

EMPLOYEE_PAY_TBL P

WHERE E.EMP_ID = P.EMP_ID;

Представление создано.

He забывайте о том, что при выборе данных из нескольких таблиц, таблицы должны быть связанными по общему ключу в выражении ключевого слова WHERE. Представление - это ни что иное, как оператор SELECT, и поэтому таблицы в нем связываются точно так же, как и в обычном операторе SELECT. He забывайте также о пользе псевдонимов, позволяющих упростить вид запроса с множеством таблиц.

Создание представления на основе другого представления

Представление можно создать на основе другого представления с помощью оператора следующего вида.

CREATE VIEW ПРЕДСТАВЛЕНИЕ2 AS

SELECT * FROM ПРЕДСТАВЛЕНИЕ1

Уровни зависимости представлений

Новые представления на основе уже созданных можно создавать с достаточной глубиной зависимости (представление на основе представления на основе представления...), определяемой ограничениями конкретной реализации языка. Единственной проблемой при создании новых представлений на основе уже имеющихся является их управляемость. Например, если вы сначала создадите представление VIEW2 на основе представления VIEWI, представление VIEWS на основе представления VIEW2, а затем удалите представление VIEWI, то с представлениями VIEW2 и VIEWS возникнут проблемы, поскольку информация, на которые ссылаются эти представления, будет недоступна. Поэтому необходимо хорошо представлять себе место представлений в базе данных и то, на основе каких объектов эти представления созданы. Зависимость представлений схематически показана на рис. 20.2.

Если представление нужного вида на основе реальной таблицы создать так же легко, как и на основе другого представления, предпочтение следует отдать представлению на основе таблицы.

Рис 202Схема зависимости представлений На рис 202 показана схема - фото 15

Рис. 20.2.Схема зависимости представлений

На рис. 20.2 показана схема зависимости представлений, основывающихся не только на таблицах, но и на других представлениях. ПРЕДСТАВЛЕНИЕ1 и ПРЕДСТАВЛЕНИЕ2 зависят от таблицы ТАБЛИЦА. ПРЕДСТАВЛЕНИЕЗ зависит от представления ПРЕДСТАВЛЕНИЕ1. ПРЕДСТАВЛЕНИЕ4 зависит от представлений ПРЕДСТАВЛЕНИЕ1 и ПРЕДСТАВЛЕНИЕ2. ПРЕДСТАВЛЕНИЕ5 зависит от представления ПРЕДСТАВЛЕНИЕ2. На основе анализа зависимостей можно заключить следующее.

• Если удалить ПРЕДСТАВЛЕНИЕ 1, несостоятельными станут ПРЕДСТАВЛЕНИЕЗ и ПРЕДСТАВЛЕНИЕ4.

• Если удалить ПРЕДСТАВЛЕНИЕ2, несостоятельными станут ПРЕДСТАВЛЕНИЕ4

и ПРЕДСТАВЛЕНИЕЗ.

• Если будет удалена ТАБЛИЦА, несостоятельными станут все представления.

Опция WITH CHECK OPTION

Опция WITH CHECK OPTION является опцией оператора CREATE VIEW. Эта опция применяется тогда, когда необходимо гарантировать, что все применяемые операторы UPDATE и INSERT удовлетворяют указанным в определении представления условиям. Если при этом указанные условия будут не удовлетворены, оператор UPDATE или INSERT возвратит ошибку. Опция WITH CHECK OPTION имеет свои собственные опции CASCADED и LOCAL. Опция WITH CHECK OPTION фактически гарантирует ссылочную целостность данных путем проверки отсутствия нарушений определения представления при обновлении данных.

Вот пример создания представления с использованием опции WITH CHECK OPTION.

CREATE VIEW EMPLOYEE_PAGERS AS

SELECT LAST_NAME, FIRST_NAME, PAGER

FROM EMPLOYEE_TBL

WHERE PAGER IS NOT NULL

WITH CHECK OPTION;

Представление создано.

Здесь опция WITH CHECK OPTION запрещает ввод значений NULL в столбец PAGER представления, поскольку представление определяется данными, не содержащими значения NULL в столбце PAGER.

Теперь попробуем ввести значение NULL в столбец PAGER.

INSERT INTO EMPLOYE_PAGERS

VALUES ('SMITH','JOHN',NULL);

INSERT INTO EMPLOYEE_PAGERS

*

ERROR at line 1:

ORA-01400: mandatory (NOT NULL) column is missing or NULL

during insert

Опция WITH CHECK OPTION работает.

Опции CASCADED и LOCAL

При использовании опции WITH CHECK OPTION в операторе создания представления из другого представления предлагается также использовать CASCADED или LOCAL.

По умолчанию, т. е. когда ничего не указано, используется CASCADED. В этом случае проверяются все представления, от которых зависит данное, все условия целостности при обновлении лежащей в основе представления таблицы, а также согласованность с ними условий в определении представления. При использовании опции LOCAL проверяется целостность данных только в рамках участвующих в определении представлений без сравнения с лежащей в их основе таблицей. Поэтому значительно безопаснее создавать представления с опцией CASCADED, поскольку в таком случае гарантируется ссылочная целостность данных лежащей в основе представлений таблицы.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


W Cat читать все книги автора по порядку

W Cat - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




SQL за 24 часа отзывы


Отзывы читателей о книге SQL за 24 часа, автор: W Cat. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x