Usando as anotações sql:identity e sql:guid
Você pode especificar as sql:identity
anotações e sql:guid
em um esquema XSD em qualquer nó que mapeia para uma coluna de banco de dados no Microsoft SQL Server. Enquanto o formato de diagrama de atualização dá suporte aos atributos updg:at-identity
e updg:guid
, isso não ocorre com o formato DiffGram. O atributo updg:at-identity
define o comportamento ao atualizar uma coluna do tipo IDENTITY. O updg:guid
atributo permite obter um valor guid de SQL Server e usá-lo no diagrama de atualização. Para obter mais informações e exemplos de trabalho, consulte Inserir dados usando diagramas de atualização XML (SQLXML 4.0).
As anotações sql:identity
e sql:guid
estendem esta funcionalidade a DiffGrams.
Quando você executa um DiffGram, ele é primeiro convertido em um diagrama de atualização e, em seguida, o diagrama de atualização é executado. Ao especificar as anotações sql:identity
e sql:guid
no esquema XSD, você está na verdade definindo o comportamento de um diagrama de atualização. Assim, todas as anotações são descritas no contexto de um diagrama de atualização. As anotações podem ser usadas para DiffGrams e diagramas de atualização; entretanto, os diagramas de atualização já fornecem um modo mais avançado de tratar valores de GUID e identidade.
As anotações sql:identity
e sql:guid
podem ser definidas em um elemento de conteúdo complexo.
Anotação sql:identity
Você pode especificar a anotação sql:identity
no esquema XSD em qualquer nó mapeado para uma coluna de banco de dados do tipo IDENTITY. O valor especificado para essa anotação define como a coluna identity-type é atualizada (usando o valor fornecido no diagrama de atualização para modificar a coluna ou ignorando o valor; nesse caso, um valor gerado por SQL Server é usado para essa coluna).
É possível atribuir dois valores à anotação sql:identity
:
ignore
Direciona o diagrama de atualização para ignorar qualquer valor fornecido no diagrama de atualização para essa coluna e depender de SQL Server para gerar o valor de identidade.
useValue
Direciona o diagrama de atualização para usar o valor que é fornecido no diagrama de atualização para atualizar a coluna do tipo IDENTITY. Um diagrama de atualização não verifica se a coluna é um valor de identidade ou não.
Se o diagrama de atualização especificar um valor para a coluna do tipo IDENTITY, sql:identity="useValue"
deve ser especificado no esquema.
Anotação sql:guid
Um diagrama de atualização pode ter SQL Server gerar um valor guid e, em seguida, usar esse valor no diagrama de atualização. No contexto de DiffGrams, você pode usar a anotação sql:guid
para especificar se deve ser usado um valor de GUID gerado pelo SQL Server ou um valor que é fornecido no diagrama de atualização para essa coluna.
É possível atribuir dois valores à anotação sql:guid
:
generate
Especifica que o GUID gerado por SQL Server ser usado para essa coluna na operação de atualização.
useValue
Especifica que o valor especificado no diagrama de atualização seja usado para a coluna. Este é o valor padrão.