Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
РБД 1-5.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
610.16 Кб
Скачать

События класса DataTable

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

  1. Изменения строк.

    • DataRowChanging – изменения вносятся в строку таблицы.

Объявление соответствующего обработчика события имеет вид

private static void Row_Changing( object sender, DataRowChangeEventArgs e )

  • DataRowChanged – изменения внесены в строку таблицы.

Объявление соответствующего обработчика события имеет вид

private static void Row_Changed( object sender, DataRowChangeEventArgs e )

  1. Пример программного кода для объекта – представителя класса DataTable:

  2. Листинг 1: html, txt

  3. Параметр обработчика события DataRowChangeEventArgs обладает двумя свойствами (Action и Row), которые позволяют определить изменяемую строку и выполняемое над строкой действие. Действие кодируется значениями специального перечисления:

  1. enum RowDataAction

  2. {

  3. Add,

  4. Change,

  5. Delete,

  6. Commit,

  7. Rollback,

  8. Nothing

  9. }

  1. Изменения полей (элементов в строках таблицы)

    • DataColumnChanging – изменения вносятся в поле строки данных.

Объявление соответствующего обработчика события имеет вид

private static void Column_Changing

(object sender, DataColumnChangeEventArgs e)

  • DataColumnChanged – изменения были внесены в поле строки данных.

Объявление соответствующего обработчика события имеет вид

private static void Column_Changed

(object sender, DataColumnChangeEventArgs e)

  1. Параметр обработчика события DataColumnChangeEventArgs e обладает тремя свойствами:

Свойство

Описание

Column

Get. Объект-представитель класса DataColumn с изменённым значением

ProposedValue

Gets, sets. Новое значение для поля в строке

Row

Строка, содержащая запись с изменяемым (измененным) значением

Лекция 4

Введение в работу с удаленными бд. Cервер бд InterBase

Введение

Структурная схема терминов

SQL-сервер Local InterBase

Все серверы БД имеют похожие принципы организации данных и управления ими. Локальный сервер InterBase представляет собой локальную копию (версию) настоящего сервера Interbase, он устанавливается на компьютер локально, и позволяет локально разрабатывать и отлаживать приложения для работы с удаленными БД. В результате становится возможным так называемое масштабирование БД. Приложение, отлаженное локально для Local InterBase, может быть без всяких изменений перенесено на удаленный компьютер и будет работать с удаленной базой данных. SQL-сервер InterBase является "промышленной" СУБД, предназначается для хранения и выдачи больших объемов информации, в условиях одновременной работы множества клиентских приложений.

Целостность БД задается путем использования:

  1. Отношения подчиненности между таблицами путем задания первичных ключей у родительской таблицы (primary) и внешних – у дочерних (foreign).

  2. Ограничения на значения отдельных столбцов путем определения ограничений (constraint) на значение домена или столбца.

  3. Бизнес-правил, задаваемых при помощи триггеров, т.е. подпрограмм, автоматически выполняемых сервером до или (и) после события изменения записи в БД.

  4. Уникальных значений нужных полей путем создания и использования генераторов (generator).

Бизнес-правила – это правила работы с БД, позволяющие быстро модифицировать ее структуру, изменять значения ключевых полей, перестраивать индексы.

Для ускорения работы клиентских приложений с удаленной БД могут быть использованы хранимые процедуры(stored procedure), т.е. процедуры, которые хранятся и выполняются на сервере.

В составе записей БД могут входить BLOB-поля, предназначенные для хранения больших объемов информации в двоичном виде: текст, графические документы, файлы, мультимедиа и т.д. Интерпретация BLOB-полей выполняется в клиентском приложении, однако разработчик может определить BLOB-фильтры для автоматического преобразования BLOB-поля в другой вид.

InterBase позволяет определить UDF (user defined function) – пользовательские функции, в которых могут реализовываться подпрограммы, отсутствующие в стандартных функциях InterBase, например, вычисление максимума и минимума, преобразование типов, и т.п. Функция пишется на любом языке программирования в виде DLL.

InterBase может посылать уведомления клиентским приложениям о наступлении события. Для обеспечения быстрого выполнения запросов можно создавать виртуальные таблицы, в которых объединены записи в соответствии с некоторым условием.