Vous pouvez utiliser des crochets [ ] afin de tester l'existence ou la valeur d'une variable.
Inclure des chaînes et variables facultatives, ou des listes de chaînes et de variables dans la syntaxe des instructions SQL : [%variable%]
Tester la valeur d'une variable et insérer ou reconsidérer une valeur en fonction du résultat du test : [%variable%? true : false]
Tester le contenu d'une variable [%variable%=constante? true : false]
Variable |
Génération |
---|---|
[%variable%] |
Teste l'existence de la variable. Génération : Généré uniquement si variable existe et n'a pas la valeur NO ou FALSE. Reverse engineering : Evalué si l'analyseur détecte une instruction SQL correspondant à la variable et n'ayant pas la valeur NO ou FALSE. |
[%variable%? true : false] |
Teste l'existence de la variable et permet un résultat conditionnel. Génération : true est généré si variable existe et n'a pas la valeur NO ou FALSE. Dans le cas contraire, c'est false qui est généré. Reverse engineering : Si l'analyseur détecte variable et que cette dernière n'a pas la valeur NO ou FALSE, le reverse engineering renvoie true. Dans le cas contraire, le reverse engineering renvoie false. variable est défini à True ou False, selon le cas. |
[%variable%=constant? true : false] |
Teste l'existence de la variable et permet un résultat conditionnel. Génération : si variable est égal à constant, true est généré. Dans le cas contraire, c'est false qui est généré. Reverse engineering : Si l'analyseur détecte que variable est égal à constant, le reverse engineering renvoie true. Dans le cas contraire, le reverse engineering renvoie false. |
[.Z: [item1][item2]...] |
Spécifie que les items n'ont pas un ordre significatif. Génération : .Z est ignoré Reverse engineering : Les items peuvent être récupérés par reverse engineering dans l'ordre où ils sont rencontrés. |
[.O: [item1][item2]...] |
Spécifie que les items sont synonymes, l'un seul d'entre eux pouvant être produit. Génération : Seul le premier item répertorié est généré. Reverse engineering : L'analyseur du reverse engineering doit trouver l'un des items pour valider toute l'instruction. |
[%OPTIONS%]
Si %OPTIONS% (options physiques pour les objets visibles dans la feuille de propriétés d'objet) existe et n'a pas la valeur NO ou FALSE, il est généré avec la valeur de %OPTIONS%.
[default %DEFAULT%]
Si l'instruction default 10 est rencontrée lors du reverse engineering, %DEFAULT% se voit attribuer la valeur 10, mais l'instruction n'est pas obligatoire et le reverse engineering continue même en son absence. Dans le cadre de la génération de script, si %DEFAULT% a la valeur 10, il est généré comme default 10, dans le cas contraire rien n'est généré pour le bloc.
[%MAND%? not null : null ]
Si %MAND% est évalué comme true ou contient une valeur autre que False ou NO, il est généré comme not null. Dans le cas contraire, il est généré comme null.
[%DELCONST%=RESTRICT?:[on delete %DELCONST%]]
Si %DELCONST% contient la valeur RESTRICT, il est généré comme on delete RESTRICT.
%COLUMN% %DATATYPE%[.Z: [%NOTNULL%][%DEFAULT%]]
[.O:[procedure][proc]]
Cette instruction va générer procedure. Lors du reverse engineering, l'analyseur syntaxique va faire correspondre les mots clés procedure ou proc.
create [or replace] view %VIEW% as %SQL%
Une script contenant soit create ou create or replace sera correctement récupéré par reverse engineering car or replace est facultatif.