ExecuterSQLe
Exécute une instruction de requête SQL pour l'occurrence de table spécifiée dans un fichier FileMaker Pro et, si une erreur se produit, renvoie ? suivi d'un message d'erreur.
Format
ExecuterSQLe ( RequêteSQL ; séparateurRubrique ; séparateurLigne { ; arguments... } )
Paramètres
Consultez la fonction ExecuterSQL.
Résultat
Texte
Provient de la version
21.1.1
Description
ExecuterSQLe est identique à la fonction ExecuterSQL, à ceci près que si une erreur se produit pendant l'analyse ou l'exécution de la requête, ExecuterSQLe renvoie une erreur dans ce format :
? ERROR: FQLxxxx/(line:offset): message
où :
-
xxxx
est un code d'erreur numérique du langage de requête FileMaker, qui n'est pas lié aux Codes d'erreur FileMaker. -
line
etoffset
sont le numéro de ligne et le décalage par rapport au caractère où l'erreur commence dans le paramètresqlQuery
. -
message
est une description de l'erreur.
Une seule erreur est renvoyée à la fois. Si plus d'une erreur est présente, une autre erreur est renvoyée après la résolution de l'erreur actuelle.
Exemple 1
En commençant par l'exemple 1 pour ExecuterSQL, modifiez le calcul pour utiliser la fonction ExecuterSQLe. Ensuite, pour voir un message d'erreur détaillé, modifiez la requête pour qu'elle fasse référence à une rubrique inexistante nommé Titre :
ExecuterSQLe ( "SELECT Titre FROM Employés WHERE IDEmployés = 1" ; "" ; "" )
Ceci renvoie :
? ERROR: FQL0007/(1:7): The column named "Titre" does not exist in any table in the column reference's scope.
Exemple 2
Définit une variable pour le résultat de la requête dans l'exemple 1, puis vérifie si le résultat commence par ?. Si c'est le cas, affiche le reste du résultat (le message d'erreur) et quitte le script.
Définir variable [ $resultat ; Valeur: ExecuterSQLe ( "SELECT Titre FROM Employés WHERE IDEmployés = 1" ; "" ; "" ) ]
Si [ Debut ( $resultat ; 1 ) = "?" ]
Ouvrir boîte dial. person. [ Fin ( $resultat ; Longueur ( $resultat ) - 2 ) ]
Fin de script [ Résultat de texte: "erreur" ]
Fin de si