КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Ограничения на использование представлений
Подмножество строк и столбцов соединения разных таблиц. Вертикально-горизонтальный срез таблицы. Горизонтальный срез таблицы. Вертикальный срез таблицы. Представление данных формируется как вертикальный срез таблицы, когда оператор SELECT возвращает значения не всех столбцов таблицы, а ограничение на записи, которые войдут в представление данных не определено. Вертикальные представления обычно используются в тех случаях, когда сохраняемые в таблице данные обрабатываются различными пользователями или группами пользователей. С помощью вертикальных представлений в распоряжение пользователей каждого типа предоставляется виртуальная таблица, состоящая только из тех столбцов, которые им необходимы.
ПРИМЕР
Предоставить пользователям базы данных «БИБЛИОТЕКА» возможность просмотра следующих сведений о читателях: № читательского билета, фамилия, имя, отчество, место работы и должность.
CREATE VIEW ReadersView AS SELECT ReaderCardNumber, FamilyName, Name, Patronymic, Job, Post FROM Readers
В результате получим виртуальную таблицу 13.1. Таблица 13.1.
Представление данных формируется как горизонтальный срез таблицы когда оператор SELECT возвращает значения из всех столбцов таблицы, но на записи, которые войдут в представление данных наложено ограничение.
ПРИМЕР
Предоставить пользователям базы данных «БИБЛИОТЕКА» сведения о книгах, изданных после 1984 года.
CREATE VIEW AllBookAfter1984 AS SELECT * FROM Books WHERE IssueYear >= ’01.01.1984’
В результате получим виртуальную таблицу 13.2. Таблица 13.2.
Представление данных формируется как вертикально-горизонтальный срез таблицы когда оператор SELECT возвращает значения не из всех полей таблицы и на записи, которые войдут в представление данных, наложено ограничение.
ПРИМЕР
Предоставить пользователям базы данных «БИБЛИОТЕКА» сведения о книгах, изданных после 1984 года. В представление данных включить название книги, год, место издания и шифр.
CREATE VIEW BookAfter1984 AS SELECT Name, IssueYaer, Drawing, Cipher FROM Books WHERE IssueYear >= ’01.01.1984’
В результате получим виртуальную таблицу 13.3. Таблица 13.3.
Представление данных формируется как подмножество строк и столбцов, когда в операторе SELECT используется внутренние или внешние соединения таблиц.
ПРИМЕР
Предоставить пользователям базы данных «БИБЛИОТЕКА» информацию о том, кто и какие книги возвращал в библиотеку не вовремя. Представление данных должно содержать: номер читательского билета, фамилию и имя читателя, название, инвентарный номер и стоимость книги, дату выдачи, возврата и фактического возврата книги.
CREATE VIEW Debtors (ReaderCardNumber, ReaderFamilyName, ReaderName, BookName, BookInventoryNumber, BookCost, IssueDate, ReturnDate, FactReturnDate) AS SELECT R.ReaderCardNumber, R.FamilyName, R.Name, B.Name, I.InventoryNumber, I.Cost, G.IssueDate, G.ReturnDate, G.FactReturnDate FROM Readers R, Books B, BookInventoryNumbers I, BookGiveOutRecord G WHERE G.ReturnDate < G.FactReturnDate AND G.ReaderCode = R.Code AND G.InventoryCode = I.Code AND I.BookCode = B.Code
В результате получим виртуальную таблицу 13.4. Таблица 13.4.
Стандарт ISO включает несколько важных ограничений на создание и использование представлений, хотя в этом отношении между разными диалектами языка SQL существуют определенные отличия. · Если столбец в представлении создается с использованием обобщающей функции, то этот столбец может указываться в предложениях SELECT и ORDER BY тех запросов, в которых осуществляется доступ к данному представлению. В частности, подобный столбец не может использоваться в предложении WHERE, а также не может быть аргументом в обобщающей функции любого из запросов, обращающихся к данному представлению. · Сгруппированное представление никогда не должно соединяться с таблицами базы данных или другими представлениями.
Дата добавления: 2014-01-07; Просмотров: 244; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |