Les objets de variables SQL extraient les valeurs des bases de données externes en toute sécurité.
Les valeurs des variables qui utilisent la source SQL sont chargées à partir d'une base de donnéesUne base de données est un ensemble organisé de données qui comprend plusieurs structures de données pertinentes. externe à l'aide des instructions SQL. Dans ce cas, la base de données du système AE"Environnement contrôlé par les composants AE. [Anciennement appelé ""système UC4"".]" ne peut pas être utilisée.
La source de variable ''SQL - interne'' peut être spécifiée pour utiliser la base de données AE.
Les éléments suivants sont nécessaires pour récupérer des valeurs dans une base de données :
Notez que les variables SQL requièrent que l'agent de base de données soit configuré et démarré de manière individuelle. Par conséquent, il ne peut être utilisé pour exécuter des jobs et des événements de base de données. Voir Installing the Agent for Database Variables pour toute information.
Pour modifier le temps maximal accordé pour résoudre les variables SQL, utilisez le paramètre VAR_TIMEOUT (UC_HOSTCHAR_*).
Les longueurs des valeurs sont toujours illimitées. Si une limite de texte maximale a été choisie dans l'onglet Attributs, celle-ci ne s'applique qu'à la première colonne de valeurs. Les éléments dépassant cette limite seront exclus.
Les caractères non imprimables sont automatiquement supprimés (caractères ASCII 0x00 à 0x20 et 0x7F).
Le nombre maximal de lignes retournées est déterminé par le paramètre SQLVAR_MAX_ROWS de la variable UC_SYSTEM_SETTINGS.
L'Automation EngineCe composant commande un système Automation Engine. Il se compose de plusieurs processus serveur. ne supprime pas les caractères espace à la fin des valeurs des variables SQL.
Lorsque vous utilisez des variables de base de données (types SEC_SQLI, SEC_SQL, SQLI, et SQL), les champs binaires ne sont pas pris en charge. Les données binaires résultant d'une requête SQL provoqueront une erreur dans l'aperçu ou lorsque les valeurs sont récupérées lors de l'exécutionDurée d'exécution d'une Tâche. C'est la période entre le début et la fin de la Tâche. La période d'activation n'en fait pas partie (voir aussi Activation et Démarrage)..
Notez que dans les variables de base de données (de type SEC_SQLI, SEC_SQL, SQLI, et SQL), pour des raisons techniques, le système ne vérifiera pas les instructions SQL traitées. Ceci signifie aussi que vous pouvez modifier ou supprimer des enregistrements de données à l'aide d'objets variable. Pour des raisons de sécurité, Automic recommande de limiter en conséquence l'accès utilisateur. Si possible, déployez un utilisateur de base de données ayant des droits en lecture seule pour les variables qui ont accès à une base de données externe (SQL, SQL SECURE). Pour les variables SQL internes (SQLI, SQLI SECURE), vous pouvez limiter l'accès aux objets au moyen d'un privilège (créer et modifier des variables SQL internes).
Selon le type de données, les variables de base de données (SEC_SQLI, SEC_SQL, SQLI et SQL) renvoient la valeur '''' (chaîne de caractères, date, heure, horodatage) ou 0 (nombre) pour les valeurs NULL.
Les variables PromptSet sont prises en charge dans les champs de sélection destinés aux types de variables BACKEND, EXEC, FILELIST, SEC_SQLI, SEC_SQL, SQLI, SQL, et XML. L'utilisation de variables PromptSet est nécessaire pour la création de Recharger dynamiquement les dialogues PromptSet.
Champ |
Description |
---|---|
Type | Ce champ en lecture seule affiche le type de variable SQL. Vous déterminez le type de variable au moment de la création de l'objet. Il ne peut pas être modifié une fois la variable définie. |
L'objet Objets connexion de type base de données qui contient les paramètres de connexion pour la base de données sélectionnée. Vous pouvez inclure des variables PromptSet ici, en utilisant la fonction Rechargement dynamique pour les invites de zones de listes modifiables. Lorsque des variables PromptSet sont utilisées dans des objets variable dynamiques et que vous cliquez sur Aperçu, vous obtiendrez une erreur. La raison en est que les variables PromptSet n'existent pas dans l'objet variable dynamique. Cependant, les variables PromptSet seront résolues lorsque les objets incluant des PromptSet sont exécutés. |
|
Login |
L'objet Objet Login qui enregistre le nom de l'utilisateur de la base de données et le mot de passe associé. Les données d'identification permettant d'accéder à la base de données sont extraites à partir de l'objet connexion si vous n'avez pas spécifié d'objet Login, ni coché l'option Login par défaut. Si aucune information d'identification ne s'y trouve non plus, une erreur survient à la résolution de la variable. Vous pouvez inclure des variables PromptSet ici, en utilisant la fonction Rechargement dynamique pour les invites de zones de listes modifiables. Lorsque des variables PromptSet sont utilisées dans des objets variable dynamiques et que vous cliquez sur Aperçu, vous obtiendrez une erreur. La raison en est que les variables PromptSet n'existent pas dans l'objet variable dynamique. Cependant, les variables PromptSet seront résolues lorsque les objets incluant des PromptSet sont exécutés. |
Login par défaut |
Vous pouvez aussi sélectionner un objet Login pour les variables SQL dans l'objet Utilisateur (login par défaut). Si le paramètre Appliquer le Login utilisateur par défaut est activé, l'objet Login qui a été attribué à l'utilisateur connecté est utilisé. L'objet Login configuré dans la variable est alors ignoré. Si aucun Login n'est défini ou si un Login non valide est défini dans l'objet utilisateur, l'accès à la variable génère une erreur. |
Instruction SQL |
Champ texte pour spécifier des instructions SQL. Ces instructions SQL sont utilisées pour sélectionner des enregistrements de données de la base de données et les attribuer aux valeurs de variable. Exemple : select * from col Notez que toutes les instructions SQL sont autorisées dans ce champ texte. Vous pouvez même modifier ou supprimer des entrées de la base de données. AE ne vérifie pas si les instructions SQL contiennent des erreurs ou sont dangereuses. Elles sont passées à la base de données sans vérification. Une erreur d'exécution ne peut donc survenir que lors de l'accès à la base de données, qui a lieu au moment de la résolution des variables. Notez que vous devez utiliser le paramètre VAR_SECURITY_LEVEL de la variable UC_SYSTEM_SETTINGS dans les instructions SQL si vous utilisez des variables prédéfinies ou d'autres objets variable. Sinon, aucun remplacement n'est effectué (par défaut) et une erreur de base de données se produit. Vous pouvez inclure des variables PromptSet ici, en utilisant la fonction Rechargement dynamique pour les invites de zones de listes modifiables. Lorsque des variables PromptSet sont utilisées dans des objets variable dynamiques et que vous cliquez sur Aperçu, vous obtiendrez une erreur. La raison en est que les variables PromptSet n'existent pas dans l'objet variable dynamique. Cependant, les variables PromptSet seront résolues lorsque les objets incluant des PromptSet sont exécutés. Longueur maximale : 4096 caractères |
Spécification des paramètres Données et format
Colonne |
Description |
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Type de données |
Le type de données détermine le format de la valeur des variables.
Le format exact du type de données sélectionné (à l'exception de ''chaîne") peut être défini dans le champ Format de sortie. Le type de données des valeurs disponibles dans la première colonne est vérifié. Le type de données de la variable doit correspondre à celui de la première colonne renvoyé par les commandes SQL, pour les sources ''SQL'' ou "SQL interne". Les données peuvent aussi être traitées à l'aide d'instructions SQL spécifiques. Une erreur se produit si des variables statiques doivent être enregistrées ou si le type de données ne correspond pas lors de l'accès à des variables dynamiques. Notez les points suivants si vous modifiez le type de données d'un objet variable statiqueObjet variable avec le paramètre "Source" - "statique" : Les valeurs des Variables sont saisies par l'Utilisateur ou par un script et restent enregistrées dans l'objet. qui contient déjà des valeurs :
Le type de données des variables "Multi", "SQL" et "SQL interne" peut être modifié à n'importe quel moment. Le type de données de la variable de scriptCaractères de remplacement d'une valeur dans un Script. en question ("float", "signed", "unsigned" ou "string") n'a pas d'importance pour les valeurs qui sont extraites à partir d'objets variable de type "Nombre" en utilisant l'élément de scriptEgalement un type d'objet distinct dans l'Automation Engine. GET_VAR. La valeur peut toujours être enregistrée. Les signes et les décimales sont supprimés lorsque le type de données de la variable de script ne les prend pas en charge. Si un autre type de données a été spécifié dans l'objet variable, les valeurs sont toujours transmises au script sous forme de "chaîne". |
|||||||||||||||
Format de sortie |
Ce paramètre définit le format dans lequel les valeurs sont enregistrées dans l'objet variable (source : variables statiques) ou extraites dans la source de données (variables dynamiques). Le contenu de ce menu de sélection dépend du type de données. Plusieurs formats différents sont disponibles pour chaque type de données (à l'exception du type ''chaîne"). Le format de sortie ne fait référence qu'à la première colonne. Pour les variables statiques, il s'agit de la colonne Valeur 1, pour les variables multi et base de données, il s'agit de la première colonne de base. Notez que les variables Multi utilisent la première colonne de base comme colonne de référence. Cela signifie que le format de sortie de la variable source peut avoir une incidence sur les valeurs extraites. Le format de sortie des variables statiques pour un type de données déterminé est modifiable à tout moment. Les valeurs sont converties dans le nouveau format. Si les valeurs ne correspondent pas à l'ancien format, il n'est pas possible d'effectuer une conversion dans le nouveau format. Le format dans lequel les valeurs sont saisies dans les variables statiques n'a pas d'importance tant qu'il s'agit d'un format pris en charge par AE pour le type de données en question. Les valeurs sont ensuite converties dans le format de sortie approprié. Le type de données "texte" n'affiche pas ce champ.
Certains formats de date contiennent "RR" comme caractères de remplacement pour l'année raccourcie. "AA" et "RR" acceptent différentes conventions de décompte des siècles sur la base des deux caractères de la date raccourcie. Exemple : Exemple : Pour le type de données ''Heure'' ou ''Horodatage'', la valeur pour l'heure doit représenter un nombre à quatre ou six chiffres. Les décimales sont supprimées. Un nombre à quatre chiffres est converti en heures et minutes. Exemple : Type de données : Horodatage |
|||||||||||||||
Définir la valeur min. Valeur min. |
Applique une valeur minimale. Le type de données "texte" n'affiche pas ces champs. |
|||||||||||||||
Définir la valeur max. Valeur max. |
Applique une valeur maximale. Le type de données "texte" n'affiche pas ces champs. |
|||||||||||||||
Limiter la longueur Longueur de texte max. |
Applique un nombre maximal de caractères. Valeurs autorisées : 1 à 1024 Si cette option est désactivée, la valeur est illimitée. La colonne clé des objets VARA a une limite maximale de 200 caractères. Cette limite existe toujours et il est impossible de l'augmenter ou de la désactiver. La colonne de résultats des variables dynamiques est illimitée. La longueur dépend des colonnes de valeurs. Cette limite se réfère à la première colonne de valeurs pour les variables statiques et dynamiques. La clé ou la colonne de résultat n'est pas vérifiée. Les valeurs qui dépassent la longueur maximale sont exclues. Seul le type de données "texte" affiche ces champs. |
|||||||||||||||
Majuscules |
Les minuscules dans les valeurs de variable sont automatiquement transformées en majuscules. Cela ne concerne que la première colonne de valeurs. Seul le type de données "texte" affiche ce champ. |
|||||||||||||||
Format du résultat |
Définition du contenu de la colonne résultat. La première colonne affichée dans l'aperçu est la colonne résultat. Les autres colonnes contiennent les valeurs des colonnes de la base de données qui ont été retournées par la requête SQL. La colonne de résultat peut se composer d'une combinaison des colonnes de valeurs et d'autres caractères au choix. Ceci est défini par le format du résultat. Les numéros de colonne qui ont été indiqués entre accolades { } dans le champ Format du résultat sont remplacés par la valeur de la colonne concernée. Exemple : La colonne de résultat correspond à la première colonne de valeur si aucun format du résultat n'est indiqué. Les limitations des variables (valeur min., valeur max. et limiter le texte) n'influencent pas la colonne de résultat, mais uniquement la première colonne renvoyée. Si la valeur de cette colonne dépasse la plage autorisée, la ligne en question est ignorée et n'est pas disponible via l'objet variable. |
Spécification du paramètre Accès au script
Vous pouvez spécifier un comportement à adopter lorsque le code est introuvable, via les cases d'option Si code introuvable.
Pour : |
Choisir : |
---|---|
Affiche un message d'erreur si un objet tente d'accéder par script à un élément absent lors de l'exécution. | Renvoie une erreur |
N'utilise pas le résultat du format de sortie si " " | Retourne les valeurs initiales |
Aperçu de commandes
Pour exécuter une commande, sélectionnez-la, puis cliquez sur Aperçu. Cela exécute les instructions SQL et affiche les résultats. Ainsi, les instructions SQL sont vérifiées et d'autres erreurs peuvent être identifiées (par exemple, le type de données de l'objet variable ne correspond pas à celui de la base de données) .
L'agent de base de données envoie les données pour l'aperçu dans un message à l'Automation Engine. Une erreur se produit si le message dépasse la longueur maximale acceptée par le processus du serveur (voir paramètre MaxMsgSize= du fichier Automation Engine UCSRV.INI, valeur par défaut : 3145 728 octets). Dans ce cas, limitez le résultat à l'aide d'un nombre de lignes maximal ou à l'aide d'instructions SQL.