Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MU_Prakticheskie_raboty_OPI.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
9.91 Mб
Скачать

4.2 Основные элементы

При создании объекта Typed DataSet на основе XSD-схемы из XSD-схемы выбираются тэги <complexType>.

Существует три элемента, позволяющие описать ограничения внутри объекта DataSet:

  • <unique> - используется для установки уникальности на поля данных (см. табл.16)

  • <key> - отличается от атрибута unique тем, что не может принимать значение NULL (см. табл.17)

  • <keyref> - позволяет описать связи между элементами XML-документа (см. таблицу 6.14).

Рассмотрим каждый элемент более подробно.

Таблица 6.14– Описание <unique>

Тэг

Атрибут

Описание

<unique>

msdata:ConstraintName

используется для хранения имени ограничения. Если этот атрибут отсутствует, то в качестве имени ограничения используется атрибут name

PrimaryKey

этот атрибут показывает, является ли ограничение первичным ключом. Если установлено значение true, то элемент является первичным ключом.

<xs:unique

msdata:ConstraintName="UCustID"

name="UniqueCustIDConstr">

<xs:selector xpath=".//Customers" />

<xs:field xpath="ID"/>

</xs:unique>

для ограничения на комбинацию полей, в тэг unique следует добавить еще один тэг

<xs:unique

msdata:ConstraintName="SomeName"

name="UniqueCustIDConstr">

<xs:selector xpath=".//Customers" />

<xs:field xpath="ID"/>

<xs:field xpath="Name"/>

</xs:unique>

Таблица 6.15 – Описание <key>

Тэг

Атрибут

Описание

<key>

msdata:ConstraintName

PrimaryKey

<xs:key

msdata:PrimaryKey="true"

msdata:ConstraintName="KeyCustID"

name="KeyConstCustomerID">

<xs:selector xpath=".//Customers" />

<xs:field xpath="ID"/>

</xs:key>

Таблица 6.16 – Описание < keyref >

Тэг

Атрибут

Описание

<keyref>

msdata:ConstraintOnly

если значение равно true – связь не создана, создано только ограничение. В противном случае в объекте DataSet создается ограничение и вязь на поле

msdata:ConstraintName

используется для хранения имени ограничения. Если атрибут отсутствует, то в качестве имени ограничения используется атрибут name

msdata:UpdateRule

используется для установки свойства UpdateRule в объекте DataSet. Если атрибут отсутствует, то в объекте DataSet это свойство будет установлено в Cascade. Определяет, необходимо ли обновлять поля в таблице каскадом

msdata:DeleteRule

используется для установки свойства DeleteRule в объекте DataSet. Если атрибут отсутствует, то в объекте DataSet это свойство будет установлено в Cascade. Определяет, необходимо ли удалять поля в связанной таблице каскадом

msdata:AcceptRejectRule

используется для установки AcceptRejectRule в объекте DataSet

<xs:key

name="OrderNumberKey">

<xs:selector xpath=".//Order" />

<xs:field xpath="OrderNumber"/>

</xs:key>

<xs:keyref name="OrderNoRef" refer="OrderNumberKey">

<xs:selector xpath=".//OrderDetail" />

<xs:field xpath="OrderNo"/>

</xs:keyref>

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]