Especificando o atributo sql:inverse em sql:relationship (SQLXML 4.0)
O atributo sql:inverse
só é útil quando o esquema XSD é usado no carregamento em massa ou por um diagrama de atualização. O sql:inverse
atributo pode ser especificado no <elemento sql:relationship> . Em diagramas de atualização, a lógica do diagrama de atualização interpreta o esquema ao determinar as tabelas e as colunas atualizadas pela operação do diagrama. As relações de pai/filho especificadas no esquema determinam a ordem na qual os registros são modificados (inseridos ou excluídos).
Se você tiver um esquema XSD no qual a relação pai/filho é especificada na ordem inversa da relação chave primária/chave estrangeira entre as colunas de banco de dados correspondentes, a operação do diagrama de atualização de inserção ou exclusão falhará por conta da violação da chave primária/chave estrangeira. Nesses casos, o sql:inverse
atributo é especificado (sql:inverse="true"
) no <elemento sql:relationship> e a lógica do diagrama de atualização inversa sua interpretação da relação pai-filho especificada no esquema.
O atributo sql:inverse
usa um valor booliano (0=false, 1=true). Os valores aceitáveis são 0, 1, true e false.
Para obter um exemplo de trabalho usando a sql:inverse
anotação, consulte Especificando um esquema de mapeamento anotado em um diagrama de atualização.