
- •“Базы данных”
- •“Базы данных”
- •Введение
- •1 Теоретические сведения
- •1.1 Сбор и анализ требований
- •1.2 Разработка концептуальной и реляционной модели
- •1.3 Создание запросов на sql
- •1.4 Рекомендации по разработке ирнтерфейса
- •2 Задание к курсовому проекту
- •2.1 Анализ предметной области
- •2.2 Определение групп пользователей
- •2.3 Интерфейс пользователя
- •3 Варианты заданий
- •4 Содержимое пояснительной записки
- •5 Сроки сдачи курсовой работы
1.3 Создание запросов на sql
Предложение запроса на выборку выглядит следующим образом:
SELECT [предикат] { * | таблица.* | [таблица.]поле1 [AS псевдоним1] [, [таблица.]поле2 [AS псевдоним2] [, ...]]}
FROM табличное выражение [, ...]
[WHERE... ]
[GROUP BY... ]
[HAVING... ]
[ORDER BY... ]
Предложение SELECT содержит следующие части:
предикат - один из следующих предикатов: ALL, DISTINCT или TOP. Используются для указания, как обрабатывать дублирующие записи и какое количество записей выводить в результате выполнения запроса, по умолчанию - ALL;
* - используется для выбора всех полей таблицы;
таблица - имя таблицы, в которой находится выбранное поле;
поле1, поле2 - имена выбранных полей, перечисляются через запятую, в качестве поля результирующего отношения может быть указано любое выражение, использующее набор стандартных функций (COUNT, AVG, SUM, MIN, MAX) и функций, встроенных в СУБД;
псевдоним, псевдоним2 - имена, используемые для замены оригинальных имен выводимых полей;
Предложение FROM является обязательной частью оператора SELECT. Это предложение определяет список таблиц, на которые ссылается запрос. В качестве таблицы может быть использовано имя сохраненного запроса или выражение, соединяющее таблицы с помощью операции INNER JOIN, LEFT JOIN или RIGHT JOIN.
Синтаксис операции соединения:
FROM таблица1 {INNER|LEFT|RIGHT} JOIN таблица2
ON таблица1.поле1 опер_срав таблица2.поле2
где INNER JOIN означает, что в результирующую таблицу попадут комбинации только тех строк первой таблицы, которые имеют удовлетворяющую заданному оператору сравнения строку во второй таблице;
LEFT JOIN – все строки из первой таблицы и только «совпадающие» из второй, а те строки первой таблицы, для которых нет «пары», объединяются с пустой записью; аналогично RIGHT, но в результат попадают все строки из второй таблицы;
таблица1, таблица2 - имена таблиц, строки из которых комбинируются;
поле1, поле2 - имена полей, которые соединяются, должны иметь одинаковые типы данных, но не обязательно одинаковые имена;
опер_срав - любой оператор сравнения: "=," "<," ">," "<=," ">=," или "<>."
WHERE позволяет указать условие, которому должны удовлетворять значения в строках результирующей таблицы.
GROUP BY определяет список имен полей, по одинаковым значениям которых будет выполнятся группировка строк.
HAVING позволяет отобрать из множества сгруппированных строк только те, которые удовлетворяют указанному условию.
ORDER BY позволяет определить условие упорядоченности строк в результирующей таблице. Такое условие представляет собой список полей, по которым необходимо упорядочить строки. Для каждого из атрибутов можно выбрать убывающую (DESC) или возрастающую последовательность (ASC – по умолчанию).
1.4 Рекомендации по разработке ирнтерфейса
Ниже перечислены советы, которые позволяют получить удобный для пользователя интерфейс.
Информация в названии окна должна недвусмысленно идентифицировать название отчета или формы.
В инструкциях должна применяться привычная для пользователей терминология, инструкции должны быть краткими, а на случай необходимости предоставления дополнительной информации следует предусмотреть специальные справочные экраны; инструкции следует записывать в стандартном формате, придерживаясь единого грамматического стиля.
Логически связанные поля следует располагать вместе, последовательность их должна быть логически обоснованной и согласованной.
Не должно быть областей с очень малой или очень большой концентрацией полей, поля нужно размещать через регулярные интервалы и выравнивать их по вертикали и горизонтали; если экранная форма имеет эквивалентный вид на бумаге, то их внешний вид должен быть согласован.
Названия полей должны быть знакомы пользователям и легко узнаваться.
Должны использоваться только знакомые и понятные термины или сокращения, выбираемые из заранее согласованного списка.
Выделение цветом может применяться для самых важных полей и сообщений и должно быть согласованно в разных окнах.
Пространства и границы полей ввода данных должны визуально выделяться.
Пользователь должен легко определять, какие операции доступны ему для перемещения курсора; обычно это клавиши табуляции, клавиши со стрелками или указатель мыши; движение курсора отражает логическую последовательность действий конечного пользователя по мере того как он читает документы с исходными данными.
Должны быть обеспечены средства исправления отдельных ошибочных символов и целых полей и средства вывода сообщений об ошибках при вводе недопустимых сообщений.
Необязательные поля должны быть явно отмечены надписью или выделением особым цветом, такие поля следует располагать после обязательных для ввода полей.
Когда пользователь помещает курсор мыши в очередное поле, то в некотором стандартном месте (например, в строке состояния) следует вывести пояснительное сообщений с описанием этого поля.
Завершение процесса заполнения формы не должно быть автоматическим – целесообразно выводить предупреждающее сообщение, чтобы при необходимости пользователь смог еще раз просмотреть введенные им данные.
Семантика данных должна быть графически очевидна.
Структура формы должна побуждать к правильным действиям – должна облегчать выполнение правильных действий и затруднять выполнение ошибочных; например, поля со списком, в которые нельзя вводить данные, а только выбирать из списка, можно выделить другим цветом; если поле предполагает короткий ввод, сделать его узким или ограничить количество вводимых символов.
Действие специальных клавиш (ESC и функциональные клавиши) должно быть согласованным и единообразным – если клавиша ESC используется для выхода из формы, то она должна использоваться только для выхода из формы, если для удаления записи используется некоторая комбинация клавиш (Ctrl+D), то эта комбинация должна использоваться для этого и в других формах.
Шрифты типа Arial читаются легче, чем шрифты с засечками (Times New Roman), полужирный шрифт следует использовать для вывода надписей, заголовков и подписей.
Расположение и набор инструментов навигации должны сохраняться неизменными во всех формах; кнопки и команды меню, которые появляются более чем в одной форме, всегда должны располагаться в одной и той же последовательности и в той же позиции, если это возможно.
Пиктограммы для идентификации объектов или операций должны быть одними и теми же во всех формах
Графический интерфейс пользователя предоставляет возможности упростить работу с приложениями БД:
раскрывающийся список имеет преимущество перед полем ввода 1) людям легче распознать что-либо, чем воспроизвести, 2) распознать проще, чем правильно написать, 3) предотвращает попадание в БД неочевидных ошибок, связанных с о случайным нажатием клавиш;
группы переключателей – могут использоваться там, где нужно сделать выбор из фиксированного множества значений, сохранять в БД можно как число или как текст;
флажки – используются для ввода подмножества значений из фиксированного множества (например, виды картин – акварель, масло, графика).