Презентация, доклад по программированию баз данных в среде Delphi на тему: Формирование запросов

Содержание

Запрос с вычисляемыми полямиполучить список работников и их зарплату, в том числе увеличенную на 15% SELECT tab_nom, FIO, salary, salary * 1.15 FROM rabotnik.dbВычисление стоимости товараSELECT kod_tovara, kol_vo, zena, kol_vo*zenaFROM prodagi.db

Слайд 1Формирование запросов
С вычисляемыми полями.
Применение псевдонима.
Соединение таблиц в запросе.
Способы создания статического

запросов.
Создание динамического запроса.

Программирование баз данных

Формирование запросовС вычисляемыми полями.Применение псевдонима. Соединение таблиц в запросе.Способы создания статического запросов.Создание динамического запроса.Программирование баз данных

Слайд 2Запрос с вычисляемыми полями
получить список работников и их зарплату, в том

числе увеличенную на 15%
SELECT tab_nom, FIO, salary, salary * 1.15
FROM rabotnik.db

Вычисление стоимости товара
SELECT kod_tovara, kol_vo, zena, kol_vo*zena
FROM prodagi.db

Запрос с вычисляемыми полямиполучить список работников и их зарплату, в том числе увеличенную на 15% SELECT tab_nom,

Слайд 3Использование псевдонима в запросах
Для придания наглядности получаемым результатам в списке выбираемых

элементов можно использовать квалификатор AS. Данный квалификатор заменяет в результирующей таблице существующее название столбца на заданное:

SELECT kod_tovara, kol_vo, zena,
kol_vo*zena as stoimost
FROM prodagi.db

SELECT count(*) as kol_vo_rabotn,
sum(salary) as obsh_zarpl, avg(salary) as sredn_zarpl,
min (salary) as min_zarpl, max (salary) as max_zarpl
FROM rabotnik.db
Использование псевдонима в запросахДля придания наглядности получаемым результатам в списке выбираемых элементов можно использовать квалификатор AS. Данный

Слайд 4Соединение таблиц в запросе
Операция соединения используется в языке SQL для вывода

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

Слайд 5Связывание производится, как правило, по первичному ключу одной таблицы и внешнему

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

Слайд 6Внутреннее соединение
Внутреннее соединение возвращает только те строки, для которых условие соединения

принимает значение true.
SELECT tovar.kod_tovara, tovar.naimen, prodagi.kol_vo, prodagi.zena, prodagi.kol_vo*prodagi.zena as stoim
FROM tovar.db, prodagi.db
WHERE tovar.kod_tovara=prodagi.kod_tovara

Внутреннее соединениеВнутреннее соединение возвращает только те строки, для которых условие соединения принимает значение true.SELECT tovar.kod_tovara, tovar.naimen, prodagi.kol_vo,

Слайд 7Внешние соединения
Внешнее соединение возвращает все строки из одной таблицы и

только те строки из другой таблицы, для которых условие соединения принимает значение true. Строки второй таблицы, не удовлетворяющие условию соединения (т.е. имеющие значение false), получают значение null в результирующем наборе.
Существует два вида внешнего соединения: LEFT JOIN и RIGHT JOIN.
Внешние соединения Внешнее соединение возвращает все строки из одной таблицы и только те строки из другой таблицы,

Слайд 8Соединение SQL JOIN
SQL JOIN - используются для запроса данных из двух

или нескольких таблиц связанных между собой ключами.
Перечислим типы JOIN:
JOIN или INNER JOIN : Возвращает строки, когда есть хотя бы одно совпадение в обеих таблицах.
LEFT JOIN: Возвращает строки из левой таблицы, даже если их нет правой таблице.
RIGHT JOIN: Возвращает строки из правой таблицы, даже если их нет левой таблице.
FULL JOIN: Возвращает строки, когда есть хоть одно совпадение в любой из таблиц.

Соединение SQL JOINSQL JOIN - используются для запроса данных из двух или нескольких таблиц связанных между собой

Слайд 9INNER JOIN - возвращает строки, когда есть хотя бы одно совпадение

в обеих таблицах


SELECT tovar.kod_tovara, tovar.naimen, prodagi.kol_vo, prodagi.zena, prodagi.kol_vo*prodagi.zena as stoim
FROM tovar INNER JOIN prodagi
ON tovar.kod_tovara=prodagi.kod_tovara

INNER JOIN - возвращает строки, когда есть хотя бы одно совпадение в обеих таблицахSELECT tovar.kod_tovara, tovar.naimen, prodagi.kol_vo,

Слайд 10В левом соединении (LEFT JOIN) запрос возвращает все строки из левой

таблицы (т.е. таблицы, стоящей слева от зарезервированного словосочетания “LEFT JOIN”) и только те из правой таблицы, которые удовлетворяют условию соединения. Если же в правой таблице не найдется строк, удовлетворяющих заданному условию, то в результате они замещаются значениями null.
Для правого соединения - все наоборот.
В левом соединении (LEFT JOIN) запрос возвращает все строки из левой таблицы (т.е. таблицы, стоящей слева от

Слайд 11Примеры соединения
SELECT tovar.kod_tovara, tovar.naimen, prodagi.kol_vo, prodagi.zena, prodagi.kol_vo*prodagi.zena as stoim
FROM tovar LEFT

JOIN prodagi
ON tovar.kod_tovara=prodagi.kod_tovara

В некоторых базах данных LEFT JOIN и RIGHT JOIN имеют имя LEFT OUTER JOIN и RIGHT OUTER JOIN соответственно.
Примеры соединенияSELECT tovar.kod_tovara, tovar.naimen, prodagi.kol_vo, prodagi.zena, prodagi.kol_vo*prodagi.zena as stoimFROM tovar LEFT JOIN prodagi ON tovar.kod_tovara=prodagi.kod_tovara В некоторых

Слайд 12Создание статического запроса
1 способ:
В Инспекторе Объектов написать текст запроса в свойстве

SQL компонента TQuery.
В свойстве Асtive компонента TQuery установить значение true.
2 способ:
Для формирования текста запроса использовать встроенное в Delphi средство SQL Builder(построитель запросов).

Создание статического запроса1 способ:В Инспекторе Объектов написать текст запроса в свойстве SQL компонента TQuery.В свойстве Асtive компонента

Слайд 133 способ: Создание запроса программно
Query1.SQL.Clear;
Query1.SQL.Add('SELECT tab_nom, FIO FROM KLIENT');
Query1.SQL.Add('WHERE

FIO LIKE ‘%ван%');
Query1.SQL.Add('ORDER BY tab_nom');
Query1.Open;
3 способ: Создание запроса программноQuery1.SQL.Clear; Query1.SQL.Add('SELECT tab_nom, FIO FROM KLIENT'); Query1.SQL.Add('WHERE FIO LIKE ‘%ван%'); Query1.SQL.Add('ORDER BY tab_nom');Query1.Open;

Слайд 14Создание динамического запроса
Динамические запросы допускают использование параметров. Для определения параметра в

запросе используется двоеточие (:), за которым следует имя параметра.

Основные действия для создания динам.запроса:
Написать запрос в свойстве SQL компонента TQuery.
В WHERE задать поле, которое будет параметром в запросе:
SELECT Name, Fam
FROM МуТablе
WHERE Number = :param

Создание динамического запросаДинамические запросы допускают использование параметров. Для определения параметра в запросе используется двоеточие (:), за которым

Слайд 153. В свойстве Params компонента TQuery у параметра param в свойстве

DataType указать тип данных поля, выбранного в качестве параметра.
DataType := ftInteger;
3. В свойстве Params компонента TQuery у параметра param в свойстве DataType указать тип данных поля, выбранного

Слайд 164. Написать процедуру для активизации и запуска запроса
Procedure *********
Begin
Query1.Close;
Query1.ParamByName(‘param').asInteger := StrtoInt(Edit1.text);


Query1.Open;
end;
4. Написать процедуру для активизации и запуска запросаProcedure *********BeginQuery1.Close;Query1.ParamByName(‘param').asInteger := StrtoInt(Edit1.text); Query1.Open; end;

Что такое shareslide.ru?

Это сайт презентаций, где можно хранить и обмениваться своими презентациями, докладами, проектами, шаблонами в формате PowerPoint с другими пользователями. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами.


Для правообладателей

Яндекс.Метрика

Обратная связь

Email: Нажмите что бы посмотреть