Основы проектирования приложений баз данных

       

Класс TDATABASE


Класс TDatabase реализует работу с объектом "база данных" и предоставляет средства контроля над соединением с базой данных.

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

Для работы с компонентом TDatabase необходимо установить значение свойств AliasName и DatabaseName.

Если значением свойства AliasName указан DSN существующего источника данных, то разработчик может сам определить любой внутренний (для приложения) псевдоним базы данных и задать его в свойстве DatabaseName. В этом случае для любого набора данных в списке значений свойства DatabaseName будет отображаться наряду со всеми доступными DSN источниками данных и внутренний псевдоним, заданный свойством DatabaseName компонента TDatabase.

В том случае, если DSN не определен, то свойство DatabaseName должно содержать полное имя файла базы данных, а свойство DriverName - указывать используемый ODBC-драйвер.

Компонент типа TDatabase позволяет управлять режимами работы с наборами данных и транзакциями, используя следующие свойства и методы.

  • Exclusive - свойство, позволяющее приложению получить исключительный доступ к базе данных (если это поддерживается SQL-сервером);
  • InTransaction - свойство, указывающее, был ли выполнен для базы данных вызов метода StartTransaction.
  • ReadOnly - метод, указывающий, установлен ли для соединения с базой данных доступ "только чтение".
  • TransIsolation - метод, задающий уровень изоляции при управлении транзакциями. Уровень изоляции определяет, как данная транзакция будет взаимодействовать с другими транзакциями, работающими с одними и теми же таблицами.

    Свойство TransIsolation может быть указано одним из следующих значений:

    tiDirtyRead - транзакция может читать данные, которые были изменены другой транзакцией, но для которых не был выполнен вызов Commit (фиксация изменений);

    tiReadCommitted - позволяет в одной транзакции читать фиксированные изменения, сделанные в базе данных другой транзакцией;

    tiRepeatableRead - истинность данных гарантируется на все время чтения, и транзакция не видит никаких изменений, сделанных другой транзакцией. Прочитанная запись остается постоянной, пока в ней не будут сделаны изменения внутри самой транзакции;

  • StartTransaction - метод, открывающий новую транзакцию;
  • Commit - метод, выполняющий фиксацию текущей транзакции;
  • Rollback - метод, выполняющий откат текущей транзакции;
  • Execute - метод, который выполняет указанный параметром SQL-оператор, не возвращающий результирующего набора.



Содержание раздела