ExecuteSQL
Doel 
Voert een SQL-opvraaginstructie uit voor de opgegeven tabelvermelding binnen een FileMaker Pro-database.
Opmaak 
ExecuteSQL ( sqlQuery ; veldscheidingsteken ; rijscheidingsteken { ; arguments...} )
Parameters 
sqlQuery - een SQL-opvraaginstructie. De instructie kan een element Union bevatten dat de resultaten van twee opvragen combineert. De instructie kan programmamatig gegenereerde SQL (dynamische parameters) bevatten die aangeven waar optionele argumenten moeten worden gebruikt in de opvraag. Gebruik het vraagteken (?) om een dynamische parameter aan te geven.
veldscheidingsteken - de tekenreeks die in het resultaat als een scheiding tussen velden wordt gebruikt. Als er een lege reeks is opgegeven, is het scheidingsteken een komma. Het veldscheidingsteken wordt niet weergegeven na het laatste veld in het resultaat.
rijscheidingsteken - de tekenreeks die in het resultaat als een scheiding tussen records wordt gebruikt. Als er een lege reeks is opgegeven, is het scheidingsteken een Return. Het rijscheidingsteken wordt niet weergegeven na de laatste rij in het resultaat.
arguments - een of meer uitdrukkingen die worden geëvalueerd en worden gebruikt als waarden voor de dynamische parameters in de opvraaginstructie.
Resulterend gegevenstype 
tekst
Afkomstig van 
FileMaker Pro 12.0
Beschrijving 
Met ExecuteSQL kunt u SQL-instructies met dynamische parameters uitvoeren om veilig opvraagacties op FileMaker Pro-databases uit te voeren om kwetsbaarheden in de beveiliging door injectieaanvallen te voorkomen.
ExecuteSQL kan niet worden gebruikt met SQL-instructies die gegevens of het databaseschema wijzigen (zoals de opdrachten Insert Into of Delete Table).
FileMaker Pro geeft als resultaat datum- en tijdgegevens in Unicode-/SQL-opmaak, niet de opmaak van het besturingssysteem of het bestand.
Als er een fout optreedt tijdens parsering of uitvoering van een opvraag, geeft FileMaker Pro als resultaat ?.
ExecuteSQL herkent geen relaties die zijn gemaakt in FileMaker Pro, wat u de flexibiliteit geeft om relaties te definiëren in SQL-instructies.
Voorbeelden 
Stel dat een database twee tabellen bevat, Werknemers en Salarissen, die via het veld WrkID zijn verbonden.
Lijst met Werknemers en Salarissen
U wilt aan de tabel Werknemers een veld toevoegen waarin wordt aangegeven hoeveel procent het salaris van de werknemer van het totaalaantal salarissen op een afdeling is. U kunt hiervoor een berekening in FileMaker Pro gebruiken, maar u kunt ook de functie ExecuteSQL gebruiken om deze opvraag te definiëren met dynamische parameters. Zo voorkomt u dat onbevoegden toegang krijgen tot vertrouwelijke salarisgegevens.
Definieer een berekeningveld in de tabel Werknemers en geef met de functie ExecuteSQL de volgende opvraaginstructie op:
100 * Salaris::Salaris / ExecuteSQL ( "select sum (S.salaris ) from Werknemers E join Salaris S on E.WrkID = S.WrkID where E.Afdeling = ?"; ""; ""; Afdeling )
Verwante onderwerpen 
Naslaggegevens voor functies (lijst met categorieën)
Naslaggegevens voor functies (alfabetisch overzicht)
Formules
Functies
Berekeningvelden definiëren
Operatoren gebruiken in formules