- •Архитектура приложений баз данных
- •Использование ado средствами Delphi
- •Набор данных в Delphi для работы с бд
- •Проектирование базы данных и редактирование данных
- •1) Наименования полей:
- •2) Типы данных:
- •3) Модификация структуры таблицы:
- •4) Определение характеристик таблицы:
- •Validity Checks (Проверка ввода значений)
- •1. Определение общего типа формы бд и источника данных
- •2. Выбор таблицы с данными
- •3. Выбор полей таблицы
- •4. Выбор способа размещения полей
- •5. Определение расположения названий полей
- •6. Размещение связанных полей
- •7. Характеристики окна формы бд
- •1.Запрос на выборку.
- •2.Запрос на добавление.
- •4.Запрос на удаление.
- •Проектирование отчетов
- •Использование запросов при проектировании приложений
- •1.Запрос на выборку.
- •2.Запрос на добавление.
- •4.Запрос на удаление.
- •Создание связей в Delphi
- •Поиск данных
1.Запрос на выборку.
Он предназначен для извлечения данных, находящихся в определенных полях одной или нескольких таблиц и соответствующих задаваемым условиям. Конструкция запроса следующая:
SELECT [DISTINCT] <список выводимых полей>
FROM <список используемых таблиц>
[WHERE <условие отбора>]
[ORDER BY <порядок сортировки>]
[GROUP BY <порядок группировки>]
[HAVING <условие отбора групп>]
[UNION <объединяемый запрос на выборку>]
Рассмотрим подробнее отдельные части запроса.
DESTINCT – указывает, что в результате запроса не должно быть
повторяющихся значений.
<список выводимых полей>:
[<таблица>.]<поле>[AS <псевдоним>]{,[<таблица>.]<поле>[AS
<псевдоним>]}, где таблица – имя таблицы, если в запросе присутствует только одна таблица, его можно опустить; поле – имя поля; псевдоним – псевдоним для имени поля является локальным в запросе; AS – оператор, ставящий в соответствие конкретному полю псевдоним. Если требуется получить данные из всех полей таблицы, то достаточно указать * вместо перечисления всех имен полей.
<список используемых таблиц>:
“<файл с таблицей>” [<псевдоним>]{,”<файл с
таблицей>”[<псевдоним>]}.
WHERE – зарезервированное слово, с которого начинается оператор задания условий.
<условие отбора>:
Условие, устанавливающее объединение:
[(<таблицаM.поле1> <условие> <таблицаN.поле2>)]{AND|OR
(<таблицаI.поле1> <условие> <таблицаJ.поле2>)}, где таблицаM, таблицаN, таблицаI, таблицаJ – имена объединяемых таблиц; поле1, поле2 – имена полей в этих таблицах, по соответствию значений которых устанавливается взаимосвязь таблиц; условие – определяет соответствие значений в заданных полях двух таблиц, например: равенство, больше, меньше, не равно и другие операции сравнения; условий может быть несколько, в этом случае они объединяются при помощи круглых скобок и логических операций AND и OR. Если условие для объединения отсутствует, формируется результат, представляющий собой всевозможные объединения записей всех таблиц.
Условие на значение полей:
[[<таблица>.]<поле> <условие> <значение>] {AND|OR
[<таблица>.]<поле> <условие> <значение>}.
Помимо математических, используются также логические операторы сравнения, предикаты IN, LIKE и другие.
ORDER BY – зарезервированное слово, с которого начинается оператор задания порядка сортировки.
<порядок сортировки>:
[<таблица>.]<поле> [ASC|DESC] {,[<таблица >.]<поле> [ASC|DESC]}, где ASC (по умолчанию) или DESC – определяют порядок сортировки соответственно по возрастанию или убыванию.
GROUP BY – зарезервированное слово, с которого начинается оператор задания порядка группировки.
<порядок группировки>:
[<таблица>.]<поле> {,[<таблица>.]<поле>}.
2.Запрос на добавление.
Этот запрос позволяет добавить запись в таблицу и присвоить значения ее полям. Конструкция запроса следующая:
INSERT INTO “<файл с таблицей>” (<поле>{,<поле>}) VALUES (<значение>{,<значение>}).
Рассмотрим подробнее отдельные части запроса:
файл с таблицей – имя файла с таблицей, в которую добавляется запись;
должен быть с расширением и содержать путь;
поле – имя поля, которому задается значение.
VALUES - зарезервированное слово, с которого начинается оператор
задания списка значений полям таблицы; значение – значение из списка
значений, которое задается соответствующему полю новой записи (их
количество должно равняться числу полей).
3.Запрос на обновление.
Этот запрос позволяет обновить значения в записях, которые соответствуют задаваемым условиям. Конструкция запроса следующая:
UPDATE “<файл с таблицей>”
SET <поле> = <значение>{, <поле> = <значение>}
[WHERE <условие отбора>]
Рассмотрим некоторые части запроса:
SET – зарезервированное слово, с которого начинается оператор, задающий список подставляемых значений; <поле> = <значение>{, <поле> = <значение>} – список полей и значений, которые задаются этим полям. [WHERE <условие отбора>] – оператор, задающий условие отбора тех записей, в которых следует обновить данные.