Главная » Просмотр файлов » Диго С.М. Базы данных проектирование и использование

Диго С.М. Базы данных проектирование и использование (1084447), страница 44

Файл №1084447 Диго С.М. Базы данных проектирование и использование (Диго С.М. Базы данных проектирование и использование) 44 страницаДиго С.М. Базы данных проектирование и использование (1084447) страница 442018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 44)

Рассматриваемый запрос можно было задать и не пользуясь Мас­тером. Посмотрим, как выглядит созданный нами запрос в режиме Конструктор (рис. 6.50). Создание подобных запросов и в этом ре­жиме не представляет особых трудностей. Но следует обратить вни­мание, что при связи основной и зависимой таблиц обязательно долж­но быть определено так называемое «левое соединение» (т.е. для свя­зи в «параметрах объединения» необходимо выбрать вторую возможность - «объединение всех записей из первой таблицы и толь­ко тех записей из второй таблицы, в которых связанные поля совпа­дают). В противном случае список окажется пустым.

Повторяющиеся записи. Так же как и в случае «поиска записей, не имеющих подчиненных», необходимость в поиске «повторяющихся записей» возникает не только для проверки целостности базы дан­ных, но и для выполнения специфических поисковых запросов.

Название «повторяющиеся записи» не совсем точно отражает суть этого типа запросов. Имеется в виду поиск записей, имеющих одина­ковое значение в заданных полях. Например, при составлении распи­сания требуется проверить, что для преподавателя не назначили не­сколько занятий в одно и то же время.

Для того чтобы осуществить поиск записей, не имеющих, подчи­ненных, можно выбрать Мастер «Записи без подчиненных» в окне Новый запрос (см. рис. 6.5).

На первом шаге создания данного запроса надо выбрать таблицу или запрос, в которых нужно найти записи с повторяющимися значе­ниями (рис. 6.51). Для нашего примера это таблица «Расписание».

На следующем шаге необходимо определить поля, дублирование
значений которых будет выявляться. Для этого следует позициониро­ваться на соответствующее поле и щелкнуть по кнопке. Для нашего примера это «Код_ сотрудника», «Дата», «Время» (рис. 6.52).

На следующем шаге (рис. 6.53) нужно выбрать те поля, которые будут также отображаться в ответе наряду с полями, выбранными на предыдущем этапе. Мы выберем оба оставшихся поля

На последнем шаге (рис. 6.54) следует задать имя создаваемого запроса

Вид полученного запроса в режиме Конструктор представлен на рис. 6.55. В строке «Условие отбора» в поле «Код_сотрудника» запи­сано следующее выражение:

In (SELECT [кодсотрудника] FROM [расписание] As Tmp GROUP BY [код_сотрудника],[дата],[время] HAVING Count(*)>l And [дата] = [расписание].[дата] And [время] = [расписание].[время])

Как видим, этот запрос значительно сложнее рассмотренных ра­нее и включает в себя вложенный запрос, написанный на языке SQL (см. главу 7).

6.2.19. Режим сводной таблицы и сводной диаграммы

Сводная таблица или сводная диаграмма может быть получена при работе с таблицей, запросом или формой. Проиллюстрируем возможности применения сводных таблиц/диаграмм, используя в качестве источника данных запрос, базирующийся на связанных таб­лицах.

Предположим, что требуется проанализировать выплаты сотруд­никам вуза. Для этого создадим запрос, включающий нужные для анализа поля, и выберем режим Сводная таблица (рис. 6.56).

При первом открытии запроса в режиме сводной таблицы или сводной диаграммы в эти режимы не включаются поля из источника записей. На рис. 6.57 показан вид экрана при первом открытии зап­роса в режиме Сводная таблица.

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

На рис.6.59 представлен вид спроектированной сводной таб­лицы.

На рис.6.60 показан вид сводной диаграммы, соответствующей данной сводной таблице. Тип выбранной диаграммы может быть лег­ко изменен.

Использование возможностей режимов сводной таблицы и свод­ной диаграммы позволяет достаточно просто и быстро анализиро­вать данные в разных разрезах и может считаться инструментом OLAP.

На это следует обратить внимание

  • Табличные языки запросов типа QBE являются простыми язы­ками, ориентированными на конечных пользователей.

  • Табличные языки запросов типа QBE реализованы во многих
    СУБД. Они могут отличаться некоторыми деталями реализации, но
    принципы, на которых они основываются, - едины.

  • Не все типы запросов могут быть реализованы на QBE.

  • Язык QBE часто используется в качестве построителя запросов
    на SQL.

Контрольные вопросы

  1. К каким классам языков запросов относится язык QBE?

  2. Почему QBE называется «табличным двухмерным» языком запросов?

  3. Каким образом можно создавать запросы на языке QBE в Access?

  4. Какие еще языки запросов можно использовать в Access?

  5. Что может служить источником данных для запроса?

  6. Какие разновидности запросов вы знаете?

  7. Какие запросы называются «сложными»?

  8. Как задаются условия «И» и «ИЛИ» в запросах?

  9. В чем особенности выполнения запросов на связанных таблицах?

  10. Что собой представляют перекрестные запросы? Как и для чего они создаются?

  11. Что собой представляют параметрические запросы? Как и для чего они создаются?

  12. Как вводятся в запрос вычисляемые поля?

  13. Как можно получать итоговые значения в запросах?

  14. Какие разновидности корректирующих запросов вы знаете? Как их задать?

  15. Что значит «открыть запрос»?

  16. Что происходит при открытии запроса на выборку?

  17. Что происходит при открытии корректирующего запроса?

  18. Может ли запрос на удаление не содержать в бланке запроса ни одного поля? Если да, то к каким действиям приведет выполнение этого запроса?

  19. Что произойдет при открытии запроса на удаление, если в бланк запроса перенесено какое-то одно поле, но условие отбора не задано?

  20. Как можно сохранить запрос? Для чего это делается?

  21. Как можно сохранить результат выполнения запроса? Для чего это делается?

  22. В чем разница между сохранением запроса и сохранением резуль­тата запроса?

  23. Как можно задать диапазон в условии запроса?

  24. Как задается состав полей, выводимых в ответ?

  25. Как можно упорядочить данные в ответе?

  26. Как влияет тип объединения таблиц на результат выполнения зап­роса?

  27. Какого типа запросы можно создать с использованием Мастера «Повторяющиеся записи»?

  28. В чем смысл «поиска записей, не имеющих подчиненных»?

Глава 7 ЯЗЫК SQL

7.1. Общая характеристика SQL

Одним из самых распространенных языков запросов является язык SQL (Structure Query Language). Он был разработан в середине 1970-х гг. (IBM). Первой коммерческой системой, в которой реализо­ван этот язык, была система Oracle (1979 г.). В дальнейшем он был реализован в целом ряде популярных СУБД для различных типов ЭВМ и операционных систем. В некоторых СУБД, таких, как Oracle, INGRES, MS SQL-сервер и др., язык SQL используется в качестве основного. В других системах, например СУБД семейства dBase, Access, AD ABAS и других, этот язык применяется в качестве альтер­нативного.

Предшественником SQL был язык SEQUEL (Structured English Query Language).

В силу широкого использования язык SQL сначала стал де-факто стандартом языка запросов, а затем было официально разработано несколько международных стандартов SQL3. Кроме того, некоторые страны имеют национальные стандарты SQL.

Десятки фирм-разработчиков программного обеспечения созда­ли собственные версии (диалекты) языка SQL. Несмотря на наличие стандарта, эти версии различаются как по синтаксису, так и по дру­гим характеристикам. Есть возможности, которые реализованы во многих системах. Использование возможностей языка, реализован­ных в большинстве систем, упрощает создание гетерогенных систем, а также не создает дополнительных проблем в случае перевода ИС в среду другой СУБД. Однако ориентация на применение только стан­дартных возможностей SQL может ограничить доступ к дополнитель­ным функциональным возможностям отдельного сервера.

Язык SQL близок к классу языков реляционного исчисления кор­тежей и используется в основном в реляционных СУБД. Но в связи с его очень широким применением имеются попытки реализации SQL и в других классах систем (например, в сетевой системе db_VISTA III).

Язык SQL обладает развитыми возможностями и может быть ис­пользован как конечными пользователями для формулировки не очень сложных запросов, так и специалистами в области обработки данных (прикладными программистами, администраторами баз данных). С развитием SQL наблюдается тенденция к его усложнению.

Язык баз данных SQL включает в себя два языка.- язык определе­ния схемы (SQL-DDL) я язык манипулирования данными (SQL-DML). Язык DDL позволяет описывать и создавать такие объекты базы дан­ных, как таблицы, индексы, представления и др. Язык DML дает воз­можность задавать поисковые и корректирующие запросы к базе дан­ных. Операторы языка манипулирования данными SQL могут исполь­зоваться как самостоятельно (интерактивный или автономный SQL), так и совместно с операторами других языков манипулирования дан­ными (встроенный SQL).

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

Имеется два типа встроенных SQL-операторов: статический SQL и динамический SQL. Статический SQL ссылается на SQL-операто­ры, которые известны до момента запуска и в дальнейшем не изменя­ются, в то время как динамические SQL-операторы определяются толь­ко во время выполнения программы.

Кроме DDL и DML иногда в качестве самостоятельного подмно­жества выделяют язык управления данными (DCL - Data Control Language). Операторы DCL обычно используются для создания объек­тов, относящихся к управлению доступом пользователей к базе дан­ных, а также для назначения пользователям подходящих уровней при­вилегий доступа.

SQL является языком высокого уровня. Пользователь не должен при его использовании помнить об открытии и закрытии каких-либо таблиц, определять наиболее эффективный способ реализации зап­роса, активизировать индексы и т.п. Все это система делает автоматически. Во многих современных СУБД имеются построители запро­сов SQL. Обычно в этом качестве выступают языки типа QBE. Но не все типы запросов SQL могут быть реализованы на QBE. Некоторые типы запросов, например запрос-объединение (Union), невозможно создать на QBE.

7.2. Описание базы данных

7.2.1. Описание таблиц

SQL оперирует с данными, представленными в виде таблиц. Каж­дая таблица содержит множество строк. Различают базовые таблицы — таблицы, определенные с помощью их описания на языке описания данных, и производные таблицы, получаемые из одной (или несколь­ких других) таблицы путем выполнения некоторого запроса.

Характеристики

Тип файла
Документ
Размер
11,48 Mb
Тип материала
Предмет
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6280
Авторов
на СтудИзбе
315
Средний доход
с одного платного файла
Обучение Подробнее