Меню
Разработки
Разработки  /  Информатика  /  Презентации  /  Запросы на выбор данных из БД в Делфи

Запросы на выбор данных из БД в Делфи

Презентация содержит описание создания запроса к БД из приложения.
28.06.2013

Описание разработки

Перед началом изучения нового материала вспомним что мы знаем о работе с БД в Делфи.(слайды 2-5).

Презентация запросы на выбор данных

Рассмотрим структуру запроса

Перед вами некоторый запрос. Скажите, что определяет данный запрос?

(слайд 6)

А если необходимо выбрать не все записи, а только те которые удовлетворяют некоторым условиям. Например фамилии начинающиеся на определенную букву.

Поэтому цель нашего занятия научиться строить запросы на выбор данных по некоторым критериям. (7)

Рассмотрим форму представления условий отбора, задаваемого после ключевого слова WHERE. Это условие определяет критерий, по которому отбираются записи.

Оператор SELECT отбирает только те записи, в которых заданное условие истинно. Условие может включать имена полей, константы, логические выражения, содержащие арифметические операции, логические операции and, or, not  и операции отношения:

=

Равно

Больше

>=

Больше или равно

Меньше

<=

Меньше или равно

<> 

Не равно

Like

Наличие заданной последовательности символов

Первые 6 операций очевидны.

Операция Like имеет синтаксис:

<поле> Like ‘<последовательность символов>’

Эта операция применима к полям типа строк и возвращает true, если в строке встречается фрагмент, заданный в операции как <последовательность символов>. Заданным символам может предшествовать и их может завершать символ процента (%), который означает – любое количество символов.  Если символ процента не указан, то заданная последовательность символов должна соответствовать только целому слову.

Например, условие

Fam Like ‘A%’

Означает, что будут отобраны все записи, в которых фамилия начинается с заглавной буквы А (операция Like различает строчные и прописные символы).

Условию

Fam Like ‘Иванов%’

Будут удовлетворять фамилии «Иванов» и «Иванова», а условию

Fam Like ‘%ван%’

Кроме этих фамилий будут удовлетворять, например «Иванников»

Для компонента Edit можно сделать обработчик события OnEditChange. В этом случае при вводе любых букв начинается автоматический выбор записей из таблицы.

WHERE (FAM LIKE  "%'+ EDIT1.TEXT + '%")

Практическое задание

На основе созданное БД сформировать два запроса:

1. запрос на выбору учащихся конкретного класса;

2. запрос на выборку учащихся , имеющих в фамилии определённый набор букв (компонент EDIT).

Содержимое разработки

ЗАПРОСЫ НА ВЫБОР ДАННЫХ

ЗАПРОСЫ НА ВЫБОР ДАННЫХ

С ПОМОЩЬЮ КАКОЙ УТИЛИТЫ СОЗДАЕТСЯ БАЗА ДАННЫХ

С ПОМОЩЬЮ КАКОЙ УТИЛИТЫ СОЗДАЕТСЯ БАЗА ДАННЫХ

С ПОМОЩЬЮ КАКОЙ УТИЛИТЫ СОЗДАЕТСЯ ПСЕВДОНИМ БД

С ПОМОЩЬЮ КАКОЙ УТИЛИТЫ СОЗДАЕТСЯ ПСЕВДОНИМ БД

ВЫБОР ИСТОЧНИКА ДАННЫХ DataSource ПРЕДСТАВЛЯЕТ ОДНУ ИЗ ТАБЛИЦ БД Table

ВЫБОР ИСТОЧНИКА ДАННЫХ

DataSource

ПРЕДСТАВЛЯЕТ ОДНУ ИЗ ТАБЛИЦ БД

Table

ДЛЯ ПРОСМОТРА И РЕДАКТИРОВАНИЯ ДАННЫХ В ТАБЛИЧНОМ ВИДЕ DBGrid ДЛЯ ВЫБОРКИ ИЗ БД ЗАПИСЕЙ УДОВЛЕТВОРЯЮЩИХ НЕКОТОРОМУ КРИТЕРИЮ Query

ДЛЯ ПРОСМОТРА И РЕДАКТИРОВАНИЯ ДАННЫХ В ТАБЛИЧНОМ ВИДЕ

DBGrid

ДЛЯ ВЫБОРКИ ИЗ БД ЗАПИСЕЙ УДОВЛЕТВОРЯЮЩИХ НЕКОТОРОМУ КРИТЕРИЮ

Query

СТРУКТУРА ЗАПРОСА SELECT Fam, Name  FROM

СТРУКТУРА ЗАПРОСА

SELECT Fam, Name

FROM ":Школа:school.db"

ДЛЯ ЗАДАНИЯ КРИТЕРИЯ ИСПОЛЬЗУЕТСЯ КЛЮЧЕВОЕ СЛОВО WHERE

ДЛЯ ЗАДАНИЯ КРИТЕРИЯ ИСПОЛЬЗУЕТСЯ КЛЮЧЕВОЕ СЛОВО

WHERE

УСЛОВИЕ МОЖЕТ ВКЛЮЧАТЬ ИМЕНА ПОЛЕЙ, КОНСТАНТЫ, ЛОГИЧЕСКИЕ ВЫРАЖЕНИЯ, СОДЕРЖАЩИЕ АРИФМЕТИЧЕСКИЕ ОПЕРАЦИИ, ЛОГИЧЕСКИЕ ОПЕРАЦИИ AND , OR , NOT И ОПЕРАЦИИ ОТНОШЕНИЯ

УСЛОВИЕ МОЖЕТ ВКЛЮЧАТЬ ИМЕНА ПОЛЕЙ, КОНСТАНТЫ, ЛОГИЧЕСКИЕ ВЫРАЖЕНИЯ, СОДЕРЖАЩИЕ АРИФМЕТИЧЕСКИЕ ОПЕРАЦИИ, ЛОГИЧЕСКИЕ ОПЕРАЦИИ AND , OR , NOT И ОПЕРАЦИИ ОТНОШЕНИЯ

Больше = Больше или равно Меньше Меньше или равно Не равно Like Наличие заданной последовательности символов " width="640"

ОПЕРАЦИИ ОТНОШЕНИЯ

=

Равно

Больше

=

Больше или равно

Меньше

Меньше или равно

Не равно

Like

Наличие заданной последовательности символов

SELECT FAM, NAME  FROM

SELECT FAM, NAME FROM ":ШКОЛА:SCHOOL.DB" WHERE (CLASS = '10A') ОБЕСПЕЧИВАЕТ ВЫБОРКУ ИЗ БАЗЫ ДАННЫХ "ШКОЛА" (ИЗ ТАБЛИЦЫ SCHOOL.DB) ЗАПИСЕЙ, У КОТОРЫХ В ПОЛЕ CLASS НАХОДИТСЯ ТЕКСТ 10А

SELECT FAM, NAME  FROM 'K') AND (FAM " width="640"

SELECT FAM, NAME FROM ":ШКОЛА:SCHOOL.DB" WHERE (FAM 'K') AND (FAM

ОПЕРАЦИЯ LIKE ИМЕЕТ СИНТАКСИС:   WHERE  LIKE ‘’

ОПЕРАЦИЯ LIKE ИМЕЕТ СИНТАКСИС: WHERE LIKE ‘’

ЗАДАННЫМ СИМВОЛАМ МОЖЕТ ПРЕДШЕСТВОВАТЬ И ИХ МОЖЕТ ЗАВЕРШАТЬ СИМВОЛ ПРОЦЕНТА (%), КОТОРЫЙ ОЗНАЧАЕТ – ЛЮБОЕ КОЛИЧЕСТВО СИМВОЛОВ. ЕСЛИ СИМВОЛ ПРОЦЕНТА НЕ УКАЗАН, ТО ЗАДАННАЯ ПОСЛЕДОВАТЕЛЬНОСТЬ СИМВОЛОВ ДОЛЖНА СООТВЕТСТВОВАТЬ ТОЛЬКО ЦЕЛОМУ СЛОВУ

ЗАДАННЫМ СИМВОЛАМ МОЖЕТ ПРЕДШЕСТВОВАТЬ И ИХ МОЖЕТ ЗАВЕРШАТЬ СИМВОЛ ПРОЦЕНТА (%), КОТОРЫЙ ОЗНАЧАЕТ – ЛЮБОЕ КОЛИЧЕСТВО СИМВОЛОВ. ЕСЛИ СИМВОЛ ПРОЦЕНТА НЕ УКАЗАН, ТО ЗАДАННАЯ ПОСЛЕДОВАТЕЛЬНОСТЬ СИМВОЛОВ ДОЛЖНА СООТВЕТСТВОВАТЬ ТОЛЬКО ЦЕЛОМУ СЛОВУ

НАПРИМЕР, УСЛОВИЕ  WHERE FAM LIKE ‘ A %’   ОЗНАЧАЕТ, ЧТО БУДУТ ОТОБРАНЫ ВСЕ ЗАПИСИ, В КОТОРЫХ ФАМИЛИЯ НАЧИНАЕТСЯ С ЗАГЛАВНОЙ БУКВЫ А (ОПЕРАЦИЯ LIKE РАЗЛИЧАЕТ СТРОЧНЫЕ И ПРОПИСНЫЕ СИМВОЛЫ)

НАПРИМЕР, УСЛОВИЕ WHERE FAM LIKE ‘ A %’ ОЗНАЧАЕТ, ЧТО БУДУТ ОТОБРАНЫ ВСЕ ЗАПИСИ, В КОТОРЫХ ФАМИЛИЯ НАЧИНАЕТСЯ С ЗАГЛАВНОЙ БУКВЫ А (ОПЕРАЦИЯ LIKE РАЗЛИЧАЕТ СТРОЧНЫЕ И ПРОПИСНЫЕ СИМВОЛЫ)

Для компонента Edit можно сделать обработчик события OnEditChange . В этом случае при вводе любых букв начинается автоматический выбор записей из таблицы. WHERE (FAM LIKE

Для компонента Edit можно сделать обработчик события OnEditChange . В этом случае при вводе любых букв начинается автоматический выбор записей из таблицы.

WHERE (FAM LIKE "%'+ EDIT1.TEXT + '%")

ПРАКТИЧЕСКОЕ ЗАДАНИЕ   НА ОСНОВЕ СОЗДАННОЙ НА ПРЕДЫДУЩЕМ ЗАНЯТИИ БД СФОРМИРОВАТЬ ДВА ЗАПРОСА:   1. ЗАПРОС НА ВЫБОРКУ УЧАЩИХСЯ ОПРЕДЕЛЕННОГО КЛАССА  2. ЗАПРОС НА ВЫБОРКУ УЧАЩИХСЯ ИМЕЮЩИХ В ФАМИЛИИ ОПРЕДЕЛЕННЫЙ НАБОР БУКВ (КОМПОНЕНТ EDIT)

ПРАКТИЧЕСКОЕ ЗАДАНИЕ НА ОСНОВЕ СОЗДАННОЙ НА ПРЕДЫДУЩЕМ ЗАНЯТИИ БД СФОРМИРОВАТЬ ДВА ЗАПРОСА: 1. ЗАПРОС НА ВЫБОРКУ УЧАЩИХСЯ ОПРЕДЕЛЕННОГО КЛАССА 2. ЗАПРОС НА ВЫБОРКУ УЧАЩИХСЯ ИМЕЮЩИХ В ФАМИЛИИ ОПРЕДЕЛЕННЫЙ НАБОР БУКВ (КОМПОНЕНТ EDIT)

-75%
Курсы повышения квалификации

Информационная культура и образование

Продолжительность 72 часа
Документ: Удостоверение о повышении квалификации
4000 руб.
1000 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Запросы на выбор данных из БД в Делфи (0.71 MB)

Комментарии 0

Чтобы добавить комментарий зарегистрируйтесь или на сайт