ExecuteSQLe

Voert een SQL-opvraaginstructie uit voor de opgegeven tabelvermelding in een FileMaker Pro-bestand en retourneert ? als er een fout optreedt gevolgd door een foutbericht.

Opmaak 

ExecuteSQLe ( sqlQuery ; verscheidingsteken ; rijscheidingsteken { ; argumenten... } )

Parameters 

Zie ExecuteSQL functie.

Resulterend gegevenstype 

tekst

Afkomstig uit versie 

21.1.1

Beschrijving 

ExecuteSQLe is identiek aan de functie ExecuteSQL functie, behalve dat als er een fout optreedt tijdens het parseren of uitvoeren van query's, ExecuteSQLe een fout retourneert in deze indeling:

? FOUT: FQLxxxx/(regel:offset):bericht

waarbij:

  • xxxx is een numerieke foutcode voor de FileMaker-query-taal die geen verband houdt met de FileMaker-foutcodes

  • regel en offset zijn het regelnummer en de offset naar het teken waar de fout begint in de sqlQuery parameter

  • bericht is een beschrijving van de fout

Er wordt slechts één fout tegelijk geretourneerd. Als er meer dan één fout aanwezig is, wordt een andere fout geretourneerd nadat de huidige fout is opgelost.

Voorbeeld 1 

Beginnend met voorbeeld 1 voor ExecuteSQL, wijzig de berekening om de functie ExecuteSQLe te gebruiken. Als u vervolgens een gedetailleerd foutbericht wilt zien, wijzigt u de query zodat deze verwijst naar een niet-bestaand veld met de naam Titel:

Kopiëren
ExecuteSQLe ( "SELECTEER Titel UIT Medewerkers WAAR EmpID = 1"; ""; "" )

Dit retourneert:

? FOUT: FQL0007/(1:7): De kolom met de naam „Titel” bestaat niet in een tabel in het bereik van de kolomverwijzing.

Voorbeeld 2 

Hiermee stelt u een variabele in voor het resultaat van de query in voorbeeld 1 en controleert u vervolgens of het resultaat begint met. Als dit het geval is, wordt de rest van het resultaat weergegeven (het foutbericht) en wordt het script afgesloten.

Kopiëren
Variabel instellen [ $resultaat ; Waarde: ExecuteSQLe ( "SELECTEER Titel UIT Medewerkers WAAR EmpID = 1"; ""; "" ) ]
If [ Left ( $resultaat ; 1 ) = "?" ]
    Laat aangepaste dialoog zien [ Rechts ( $resultaat ; Lengte ( $resultaat ) - 2 ) ]
    Script aanpassen [ Tekst resultaat: "fout" ]
Eindigt als