SQLeAusführen

Führt eine SQL-Abfrage für das angegebene Tabellenvorkommen in einer FileMaker Pro-Datei aus und gibt bei einem Fehler „?“ gefolgt von einer Fehlermeldung zurück.

Format 

SQLeAusführen ( sqlAbfrage ; Feldtrennzeichen ; Zeilentrennzeichen { ; Argumente... } )

Parameter 

Siehe Funktion „SQLAusführen“.

Zurückgegebener Datentyp 

Text

Ursprung in Version 

21.1.1

Beschreibung 

SQLeAusführen ist identisch mit der Funktion Funktion „SQLAusführen“, mit der Ausnahme, dass SQLeAusführen einen Fehler in folgendem Format zurückgibt, wenn während der Analyse oder der Ausführung der Abfrage ein Fehler auftritt:

? FEHLER: FQLxxxx/(Zeile:Versatz): Meldung

Dabei gilt:

  • xxxx ist ein numerischer Fehlercode der FileMaker-Abfragesprache, der in keinem Zusammenhang mit den FileMaker-Fehlercodes steht.

  • Zeile und Versatz sind die Zeilennummer und der Versatz zum Zeichen, bei dem der Fehler im Parameter sqlQuery beginnt

  • Meldung ist eine Beschreibung des Fehlers

Es wird jeweils nur ein Fehler zurückgegeben. Wenn mehr als ein Fehler vorliegt, wird nach Behebung des aktuellen Fehlers ein weiterer Fehler zurückgegeben.

Beispiel 1 

Ändern Sie die Formel beginnend mit Beispiel 1 für SQLAusführen so, dass die Funktion „SQLeAusführen“ verwendet wird. Um eine detaillierte Fehlermeldung zu erhalten, ändern Sie die Abfrage so, dass sie sich auf ein nicht vorhandenes Feld namens „Titel“ bezieht:

Kopieren
SQLeAusführen ( "SELECT Titel FROM Mitarbeiter WHERE MitarbID = 1"; ""; "" )

Dies gibt Folgendes zurück:

? FEHLER: FQL0007/(1:7): Die Spalte mit dem Namen "Titel" existiert in keiner Tabelle im Bereich der Spaltenreferenz.

Beispiel 2 

Setzt eine Variable auf das Ergebnis der Abfrage in Beispiel 1 und prüft dann, ob das Ergebnis mit ? beginnt. Wenn dies der Fall ist, wird der Rest des Ergebnisses (die Fehlermeldung) angezeigt und das Script wird beendet.

Kopieren
Variable setzen [ $Ergebnis ; Wert: SQLeAusführen ( "SELECT Titel FROM Mitarbeiter WHERE MitarbID = 1"; ""; "" ) ]
If [ Left ( $result ; 1 ) = "?" ]
    Eigenes Dialogfeld anzeigen [ ZeichenRechts ( $Ergebnis ; Länge ( $Ergebnis) - 2 ) ]
    Aktuelles Script verlassen [ Textergebnis: "Fehler" ]
Ende (wenn)