Структурная схема терминов
Компоненты для доступа к данным и их отображения
Состав клиентского приложения одинаков при работе с локальными и удаленными БД. Используются одни и те же визуальные компоненты, компоненты TDataSource для связи визуальных и не визуальных компонентов, однако при работе с невизуальными компонентами есть ряд отличий.
1. Компонент TTable не желательно использовать, т.к. этот компонент требует передачи всех данных результата выполнения запроса к серверу всех данных, а не только визуализуемых.
2. Изменение записей БД следует производить не методами insert, delete, edit, cancel и т.д., а при помощи SQL-операторов INSERT, UPDATE, DELETE.
3. Нужно отрабатывать транзакции и выбирать соответствующий потребностям приложения уровень изоляции транзакции TIBTransaction.
4. Желательно использовать не более одного компонента TIBDatabase, TDatabase, и явно определить его в приложении для управления параметрами соединения (имя пользователя, пароль, и т.д.).
5. Бизнес-правила следует переносить на сервер, разгружая клиентское приложение.
6. Для обращения к хранимым процедурам на сервере следует использовать компонент TStoredProc.
7. Следует минимально загружать сетевой трафик путем явного старта и подтверждения транзакции. В компоненте TDatabase есть запуск транзакции Start From Transaction и завершение Commit.
8. Следует оптимизировать запросы к БД (операторы Select).
9. Компонент TIBEvent применяется для доступа к удаленным данным, чтобы получить от сервера уведомление о событии.
Формирование запросов на выборку данных
SELECT – оператор для выборки данных.
SELECT <список полей> FROM <таблица> [WHERE<условие отбора> ORDER BY<список полей> [GROUP BY <список полей для группировки>] [HAVING <Условия группирования>];]Пример 1
SELECT Fam, Name, Year_b FROM Pers;Пример 2
SELECT * FROM Pers;При работе с InterBase использование русских символов, имен полей, переменных, таблиц недопустимо.
В выражении для полей могут использоваться строковые константы и операция "конкатенация".
Пример
SELECT "Отдел:" ||DEP, "ФИО:" ||FAM, "год рождения:" ||CAST (Year_b as char (4)) FROM PersФункция CAST преобразует число в строку.
Условие отбора WHERE может включать логические операции отношения (AND, OR, NOT, =, <, > и т.д.). Кроме того, в условия отбора может входить операция LIKE, которая проверяет наличие заданной последовательности символов строке.
Пример
SELECT Fam FROM Pers WHERE Fam LIKE 'Иванов%'SELECT Fam FROM Pers WHERE Fam LIKE '%ван%'В условии может также использоваться функция BETWEEN, задающая для указанного поля диапазон отбираемых значений:
BETWEEN значение1 and значение2Пример
SELECT Fam, Year_b FROM PersWHERE Year_b BETWEEN 1950 and 1980Операция IN определяет соответствие поля одному из элементов заданного множества.
Пример
SELECT Fam, Year_b FROM PersWHERE Fam IN ('Иванов',' Петров')Служебные слова ORDER BY в операторе SELECT используется для задания порядком сортировки записи в выборке. По умолчанию порядок сортировки прямой и ORDER BY можно не писать. Если нужен обратный порядок сортировки, то пишут: ORDER BY <поле> DESC.
В конце операции SELECT могут использоваться следующие ключевые слова:
· DISTINCT – означает, что в выборку не включаются повторяющиеся записи;
· ALL – включаются все записи.
По умолчанию используется именно ALL и его можно не писать.
Дата добавления: 2021-09-25; просмотров: 308;