Класс 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-оператор, не возвращающий результирующего набора.