ВУЗ:
Составители:
Рубрика:
123
В ADO .NET уровень изоляции можно установить при создании транзак-
ции:
myCommand.Transaction = conn.BeginTransaction(System.Data.IsolationLevel.Serializable);
Дополнительно поддерживаются еще два уровня (рис. 104):
• Chaos. Транзакция не может перезаписать
другие непринятые транзакции с большим
уровнем изоляции, но может перезаписать
изменения, внесенные без использования
транзакций. Данные, с которыми работает
текущая транзакция, не блокируются;
• Unspecified. Отдельный уровень изоляции,
который может применяться, но не может
быть определен. Транзакция с этим уров-
нем может применяться для задания соб-
ственного уровня изоляции.
Транзакции обеспечивают целостность базы данных, при разработке мно-
гоуровневых приложений их применение является обязательным правилом.
4.4. Работа с таблицами данных
4.4.1. Объекты DataSet, DataTable и DataColumn
Объект DataSet представляет собой буфер для хранения данных из базы.
Этот буфер предназначен для хранения структурированной информации, пред-
ставленной в виде таблиц, поэтому первым, самым очевидным вложенным объ-
ектом DataSet является DataTable. Внутри одного объекта DataSet может хранить-
ся несколько загруженных таблиц из базы данных, помещенных в соответст-
вующие объекты DataTable.
Всякая таблица состоит из столбцов (называемых также полями или ко-
лонками) и строк (записей). Для обращения к ним и для управления столбцами
и строками в объекте DataTable предназначены специальные объекты –
DataColumn и DataRow. Между таблицами могут быть связи – здесь они пред-
ставлены объектом DataRelation. Наконец, в таблицах есть первичные и вторич-
ные ключи – объект Constraint со своими двумя подклассами UniqueConstraint и
ForeighKeyConstraint описывают их. Отметим, что объекты программы и соответ-
ствующие объекты базы данных не эквивалентны.
В загруженных таблицах не формируются автоматически все нужные
объекты, в некоторых случаях необходимо сделать это самостоятельно. Сами
объекты имеют также довольно тонкую и сложную структуру, поэтому это бы-
ло бы довольно грубым приближением. Однако, на первых порах, для понима-
ния сути полезно помнить следующие соотношения:
DataSet = <одна или несколько таблиц> = <один или несколько объектов DataTable>.
DataTable = <таблица>.
Рис. 104. Определение уровня
транзакции
Страницы
- « первая
- ‹ предыдущая
- …
- 121
- 122
- 123
- 124
- 125
- …
- следующая ›
- последняя »