Execute SQL
Purpose
Executes any SQL statement on an ODBC data source.
See also
Format
Execute SQL [With dialog: On/Off; ODBC: <datasource name>; <native SQL
or calculated SQL>]
Options
•With dialog specifies whether to display the Specify SQL dialog box, the Select ODBC Data Source dialog box, and the dialog box for entering a password when the script step is performed.
•ODBC Data Source displays the Select ODBC Data Source dialog box. Select a data source from the list, click OK, and enter a valid user name and password.
Note Select Save user name and password if you set With dialog to Off, or users may be unable to access your data source.
•Calculated SQL text specifies a calculation to use as the SQL query.
•SQL text lets you manually enter a SQL query statement.
Compatibility
Where the script step runs | Supported |
FileMaker Pro | Yes |
FileMaker Server | Partial |
FileMaker Go | No |
Custom Web Publishing | Partial |
FileMaker WebDirect | Partial |
Runtime solution | No |
Originated in
FileMaker Pro 6.0 or earlier
Description
You can use this script step to manage data in an ODBC
data source through an ODBC SQL interface. This provides more control over the FileMaker Pro interaction with ODBC data sources. You can add multiple Execute SQL steps to a script.
Important See
Get functions for information about error handling.
Notes
•SQL statements are limited to a maximum length of 256 K characters (512 KB).
•FileMaker Server, FileMaker WebDirect, and Custom Web Publishing support this script only if the With dialog option is set to Off.
•If you use the Execute SQL script step to send ODBC data that contains Unicode strings, your ODBC driver must support Unicode. Otherwise, the results may be inconsistent.
•ODBC import, the Execute SQL script step, and external SQL data sources are not supported in runtime solutions created with FileMaker Pro Advanced.
•Because Microsoft SQL Server supports both Unicode and non-Unicode field types, you must prefix all Unicode strings with an uppercase “N” (which stands for “National” in the SQL-92 standard). Otherwise, when a Unicode string containing non-English characters is passed to Microsoft SQL Server, you may lose any data that doesn’t exist in the Microsoft SQL Server code page.
Example 1
Updates records in the Employees table of an external ODBC data source.
Execute SQL [With dialog: On; SQL Text: INSERT INTO Employees (EmployeeID, FirstName, LastName, Title, WorkPhone, Salary) VALUES (100, N'Joe', N'Smith', N'Software Engineer', '987-7000', 100000) UPDATE Employees SET Title = N'Manager' WHERE EmployeeID = 103 DELETE FROM Employees WHERE EmployeeID = 103]
Example 2
Calculates and performs an SQL statement to update records in the Customers table of an external ODBC data source.
Execute SQL [With dialog: On; Calculated SQL Text: "INSERT INTO Customers (Company, LastName) VALUES (" & Customers::Company & "," & "N'" & Customers::Last & "')"]
Related topics