Comment utiliser des prédicats SQL avec xml

Prédicats

Sommaire

renvoyer une valeur True ou False. Certains nouveaux prédicats ont été ajoutées à SQL qui portent spécifiquement sur XML. Cela peut être utile pour réduire considérablement votre charge de travail.

DOCUMENT

Le but de la DOCUMENT prédicat est de déterminer si une valeur XML est un document XML. Il teste pour voir si une valeur XML est une instance de soit XML (TOUT AUTRE DOCUMENT) ou XML (document non typé). La syntaxe est:

XML-valeur IS [NOT] [ANY | Untyped] DOCUMENT

Si l'expression est évaluée à TRUE, les déclarations sous-jacentes VRAI- sinon, elle retourne FAUX. Si la valeur XML est nul, le prédicat renvoie une UNKNOWN valeur. Si vous ne spécifiez pas QUELCONQUE ou Untyped, l'hypothèse par défaut est QUELCONQUE.

CONTENU

Vous utilisez le CONTENU prédicat pour déterminer si une valeur XML est une instance de XML (TOUT CONTENU) ou XML (le contenu non typé). Voici la syntaxe:

XML-valeur IS [NOT] [ANY | Untyped] CONTENU



Si vous ne spécifiez pas QUELCONQUE ou Untyped, QUELCONQUE est la valeur par défaut.

XMLEXISTS

Comme son nom l'indique, vous pouvez utiliser la XMLEXISTS prédicat pour déterminer si une valeur existe. Voici la syntaxe:

XMLEXISTS (XQuery expression [l'argument-list])

L'expression XQuery est évaluée en utilisant les valeurs fournies dans la liste d'arguments. Si la valeur recherchée par l'expression XQuery est le SQL NUL la valeur, le résultat du prédicat est inconnue. Si l'évaluation retourne une séquence XQuery vide, le résultat du prédicat est FAUX- sinon, il est VRAI.

Vous pouvez utiliser ce prédicat pour déterminer si un document XML contient un contenu particulier avant d'utiliser une partie de ce contenu dans une expression.

VALIDE

La VALIDE prédicat est utilisé pour évaluer une valeur XML pour voir si elle est valable dans le cadre d'un schéma XML enregistré. La syntaxe de la VALIDE prédicat est plus complexe que dans le cas de la plupart des prédicats:

xml-valeur IS [NOT] [option de contrainte d'identité en cours de validité XML] VALIDE [XML valide selon à la clause]

Ce prédicat vérifie si la valeur XML est l'un des cinq sous-types de XML: XML (SEQUENCE), XML (TOUT CONTENU), XML (le contenu non typé), XML (TOUT AUTRE DOCUMENT), ou XML (document non typé). En outre, il pourrait éventuellement vérifier pour voir si la validité de la valeur XML dépend de contraintes d'identité, et si elle est valide par rapport à un schéma XML particulier (la cible de validité).

Il y a quatre possibilités de identité contrainte-options composant de la syntaxe:

  • Sans contraintes de IDENTITÉ: Si la identité constraint-composante de la syntaxe de l'option est pas spécifié, Sans contraintes de IDENTITÉ est assumé. Si DOCUMENT est spécifié, il agit comme une combinaison de la DOCUMENT prédicat et la VALIDE prédicat Avec l'identité contraintes globales.

  • Avec l'identité contraintes globales: Cette composante de la syntaxe, la valeur est vérifiée non seulement contre le schéma XML, mais aussi contre les règles XML pour les relations ID / IDREF.

    ID et IDREF sont XML types d'attributs qui identifient les éléments d'un document.

  • Avec des contraintes de l'identité locale: Cette composante de la syntaxe, la valeur est vérifiée contre le schéma XML, mais pas contre les règles XML pour ID / IDREF ou les règles de schéma XML pour les contraintes d'identité.

  • DOCUMENT: Cette composante de la syntaxe signifie l'expression de valeur XML est un document et est valable Avec l'identité contraintes globales avec une syntaxe XML valide selon clause. La XML valide selon article identifie le schéma que la valeur va être validé.


» » » » Comment utiliser des prédicats SQL avec xml