Поделиться через


Использование заметок sql:identity и sql:guid

Область применения: SQL Server База данных SQL Azure

Вы можете указать заметки sql:identity и sql:guid в схеме XSD на любом узле, который сопоставляется с столбцом базы данных в Microsoft SQL Server. В то время как формат диаграммы обновления поддерживает атрибуты updg:at-identity и updg:guid , формат DiffGram не поддерживает. Атрибут updg:at-identity определяет поведение при обновлении столбца типа IDENTITY. Атрибут updg:guid позволяет получить значение GUID из SQL Server и использовать его в диаграмме обновления. Дополнительные сведения и рабочие примеры см. в разделе "Вставка данных с помощью xml-обновлений" (SQLXML 4.0).

Заметки sql:identity и sql:guid расширяют эту функцию до DiffGrams.

При выполнении дельты она вначале преобразуется в диаграмму обновления, а затем выполняется диаграмма обновления. Указав заметки sql:identity и sql:guid в схеме XSD, вы фактически определяете поведение диаграммы обновления. Поэтому все заметки описаны в контексте диаграммы обновления. Заметки можно использовать как для дельт, так и для диаграммы обновления, но диаграммы обновления уже предоставляют более эффективный способ обработки значений идентификаторов и GUID.

Заметки sql:identity и sql:guid можно определить на сложном элементе содержимого.

Заметка sql:identity

Вы можете указать заметку sql:identity в схеме XSD на любом узле, который сопоставляется с столбцом базы данных типа IDENTITY. Значение, указанное для этой заметки, определяет, как обновляется столбец типа IDENTITY (с помощью значения, указанного в диаграмме обновления, для изменения столбца или пропуска значения, в этом случае для этого столбца используется созданное SQL Server значение).

Заметка sql:identity может быть назначена двумя значениями:

ignore
Направляет диаграмму обновления, чтобы игнорировать любое значение, предоставленное в диаграмме обновления для этого столбца, и полагаться на SQL Server для создания значения удостоверения.

useValue
Дает диаграмме обновления указание использовать заданное в ней значение для обновления столбца IDENTITY. Диаграмма обновления не проверяет, имеет ли столбец значение идентификатора.

Если на диаграмме обновления указано значение столбца identity-type, в схеме должен быть указан sql:identity="useValue".

Заметка sql:guid

Диаграмма обновления может создать значение GUID SQL Server, а затем использовать это значение в диаграмме обновления. В контексте DiffGrams можно использовать заметку sql:GUID, чтобы указать, следует ли использовать значение GUID, созданное SQL Server, или использовать значение, указанное в диаграмме обновления для этого столбца.

Заметка sql:guid может быть назначена двумя значениями:

создать
Указывает, что guid, созданный SQL Server, используется для этого столбца в операции обновления.

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