FileMaker Konferenz 2012 Salzburg www.filemaker-konferenz.com Nicolaus Busch, N. Busch GmbH SQL-Kommandos 1 Mit SQL-Kommandos FileMaker Daten lesen - und.

Slides:



Advertisements
Ähnliche Präsentationen
ER-Datenmodell und Abfragen in SQL
Advertisements

Datenbanksysteme für FÜ SS 2000 Seite Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.
Datenbanksysteme für FÜ WS2004/05 SQL1 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.
MySQL.
IT – Struktur an Schulen
Allgemeine Technologien II
Systemüberblick Beispiele: Microsoft Access Oracle Ingres Informix
SendEplanung Datenbank
SQL als Abfragesprache
SQL als Abfragesprache
IS: Datenbanken, © Till Hänisch 2000 CREATE TABLE Syntax: CREATE TABLE name ( coldef [, coldef] [, tableconstraints] ) coldef := name type [länge], [[NOT]NULL],
Dynamische Webseiten mit PHP
Otto-von-Guericke-Universität Magdeburg Gamal Kassem 1 Tabellenzeile mit READ lesen READ TABLE itab INDEX idx READ TABLE itab WITH KEY comp1 = f1.... Compn.
Otto-von-Guericke-Universität MagdeburgGamal Kassem Übung 7 Reports mit Datenbankzugriff.
Erstellen einer Datenbank
SQL 2 Order by null Aggregatfunktionen group by Join subselect.
Datenintegrität Referentielle Integrität create table
Einführung in Visual C++
Datenbanken 10: Einfügen, Ändern, Löschen
Einführung MySQL mit PHP
Arbeiten mit SQL in Visual FoxPro 9.0
SQL in Visual FoxPro. © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum.
Arbeiten mit SQL in Visual FoxPro 9.0 deutschsprachige FoxPro User Group Rainer Becker Microsoft Visual FoxPro 9.0 Roadshow SQL.
Einführung und Überblick
objekt-relationale Datenbanken
SQL-Tutorium Ernst Rodlmayr.
... und alles was dazugehört
SQL PHP und MySQL Referat von Katharina Stracke und Carina Berning
Relationale Datenbanken III
HORIZONT 1 XINFO ® Das IT - Informationssystem Java Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
PHP und MYSQL am Organisatorisches Der komplette Kurs im Schnelldurchgang Bewertung von wichtig und unwichtig Historisch Kulturwissenschaftliche.
Betrieb von Datenbanken Marco Skulschus & Marcus Wiederstein Datenmanipulation Lehrbuch, Kapitel 4.
Folgendes kann missbraucht werden: formulare unverschlüsselte login-informationen ungeschützte includes SQL-injection reto ambühler
SQL Überblick Abfragen aus einer Tabelle
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #4 SQL (Teil 1)
Vorlesung #4 SQL (Teil 1).
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #7 SQL (Teil 4)
WS 2013/14 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #5 SQL (Teil 2)
HORIZONT 1 XINFO ® Das IT - Informationssystem HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 /
JDBC (Java DataBase Connectivity)
(D.h. „Hallo MausFans!“ auf Japanisch).
Datenbanksysteme für hörer anderer Fachrichtungen
Einführung in Datenbankmodellierung und SQL
Freiwillige Feuerwehr der Stadt Perg
PHP Basic.
Aggregatsfunktion SQL = Structured Query Language.
PL/SQL - Kurze Einführung April 2003Übung Data Warehousing: PL/SQL 2 PL/SQL.. ist eine Oracle-eigene, prozedurale Programmiersprache Sämtliche.
SQLite und XML in PHP 5.
Webseiten mit PHP, SQL, XML und Webservices Anhand praktischer Beispiele.
Internet Praktikum Aufgabe Kopieren Sie die bitte das von Ihnen erstellte Kino-Projekt in Ihr Gruppenverzeichnis auf den HTTP-Server. \\SERVER1\VWA??\
ADAT©2004 Dipl. - Ing. Walter SabinSeite: 19 Version 1.0a Programme - Zusatzsoftware Oracle: –Forms –Reports –Designer –Jdeveloper –APEX (Application Express)
Datenbankanbindung mit
Structured Query Language
FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH Datenaustausch mit SQL Datenaustausch zwischen FileMaker und.
WS 2014/15 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #6 SQL (Teil 3)
Termin Festlegung Einführung MySQL Runterladen MySQL, Pentaho Design Studio Betrachtung Pentaho
TypoScript.
Dynamische Webseiten mit MySql und PHP
Datenbank für Skriptenverkauf
PHPmyadmin Maya Kindler 6c.
WS 2014/15 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #9 SQL Zusammenfassung.
Datenbanken erstellen mit PostgreSQL
Datenbanken abfragen mit SQL
By Thorsten Zisler 1 SQL Datenbank Anbindung an den Supervisor.
SQL Structured Query Language Enzio Thiem. INHALT CREATE TABLE Anweisung Gängige Datentypen Beispiel CREATE TABLE Beispiel CREATE TABLE - erweitert Beispiel.
SQL Basics Schulung –
Sprachumfang von SQL Vier Kategorien DDL (Data Definition Language)
Vorlesung #4 Relationales Kalkül und SQL (Teil 1)
Abfragesprache SQL in ORACLE
(Structured Query Language)
 Präsentation transkript:

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 1 Mit SQL-Kommandos FileMaker Daten lesen - und schreiben Integriertes SQL in FileMaker 12 SQL mit Plugins nutzen FileMaker Konferenz2010 FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 2 Struktur 1.Was ist SQL? 2.Konzeptionelle Unterschiede SQL-FM 3.Neu in FileMaker 12: SQL-Select 1.Aufbau einer SQL-Abfrage 2.Was geht, was geht nicht? 3.Caveat: Das macht Probleme 4.Was kann man damit anstellen? Anwendung an Beispielen 1.Vorhandensein eines Datensatzes prüfen (SELECT BY ID) 2.Einschub: Das macht Probleme 3.Einschub: Dynamische vs. statische Argumente 4.Werte aus einem Datensatz holen ohne Beziehung oder Suche (SELECT fieldnames) 5.Liste verschiedener Werte innerhalb Suchbereich holen (SELECT DISTINCT) 6. Array gruppierter Summen holen (SELECT COUNT GROUP BY) 7.Join oder: One Night Stand statt Beziehung

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 3 Struktur 4.Mit Plugins SQL ausschöpfen 1. Plugins im Markt 2. Vorsicht bitte! 3. Erweiterte Möglichkeiten durch CREATE, UPDATE & DELETE 1. Datensatz in beliebige Tabelle einfügen (INSERT INTO) 2. Datensatz in beliebiger Tabelle aktualisieren (UPDATE … WHERE …) 3. Datensätze löschen aufgrund Bedingung (DELETE FROM … WHERE) 4. Exkurs: Erweiterte Möglichkeiten durch PHP-Programmierung (oder andere Sprache) 5.Auch hier: Umbenennungs-Probleme 5.Funktionsbibliotheken am Beispiel Smartpill 4.Den Function-Maker nutzen 5.Funktionen zur Laufzeit laden 6.Update vie URL

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 4 Was ist SQL? SQL ist keine Datenbank SQL ist eine Sprache (Structured English Query Language) Entwickelt Anfang der 1970er Jahre bei IBM Wenige Sprachelemente zur Abfrage und Manipulation von Daten und Datenbankstruktur Von zahlreichen DBMS unterstützt (MySQL, MS SQL Server, Oracle, DB/2, FileMaker,…) Sprache im Wesentlichen unabhängig von verwendeter Engine

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 5 Konzeptionelle Unterschiede SQL-FM FileMaker: Suche selektiert Datensätze für weitere Bearbeitung Befehle beziehen sich auf die Fundmenge SQL: Jedes Statement steht für sich Suche und Datenausgabe/Manipulation im selben Befehl Erstellen, Editieren, Löschen mit Bedingungsangabe

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 6 Neu in FileMaker 12: SQL-Select SQL-Statements an FileMaker schicken SQLQueryAusführen( "SELECT field(s) FROM table [WHERE Bedingung ]")Allgemeine Form: SQLQueryAusführen( "SELECT field(s) FROM table [WHERE Bedingung ]") SQLQueryAusführen( "SELECT * FROM Adressen" ; "";"")Einfachstes Beispiel SQLQueryAusführen( "SELECT * FROM Adressen" ; "";"")  ,Müller,DE,Walter,Helmut Kohl Allee 12,55116,Mainz  2312,Meier,AT,Irene,Erzherzog-Johann-Strasse 5,1172,Wien  12156,Ganter,CH,Hansueli,Bankenplatz 1,8000,Zürich  15612,Zehnder,,Rudolf,Paradeplatz 12,1100,Wien  Unsortierte Liste, Feldreihenfolge wie erstellt

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 7 Datensatz prüfen Gibt es dich schon? IstLeer( SQLQueryAusführen( " SELECT id FROM Adressen WHERE Nachname = 'Sarasin' AND Vorname = 'Philipp' "; "" ; "" )) Ergebnis: Leer oder ID-Liste Weichere Abfrage: SQLQueryAusführen( " SELECT id FROM Adressen WHERE LOWER( Nachname ) = 'sarasin' AND LOWER( Vorname ) = 'philipp' "; "" ; "" )

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 8 Das macht Probleme Was geht: alle Arten von Abfragen mit SELECT Was geht nicht: alle Arten von Manipulation der Daten oder der Struktur Unterstützung durch FileMaker bei Fehlern: keine gross- und KLEINschreiBunG von Argumenten Umbenennungs-Probleme _Sonderzeichen in Feldname ⇒ \" benutzen Keine SQL-Abfragen in gespeicherten Berechnungen! Kein SQL-Abfragen im Data Viewer stehen lassen!

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 9 Dynamische vs. statische Argumente  SQLQueryAusführen( "SELECT id FROM Adressen WHERE Nachname = 'Sarasin' AND Vorname = 'Philipp' "; "" ; "" )  SQLQueryAusführen( "SELECT id FROM Adressen WHERE Nachname = '" & Adressen::Nachname & "' AND Vorname = '" & Adressen::Vorname & "' "; "" ; "" )  SQLQueryAusführen( "SELECT id FROM Adressen WHERE Nachname = ? AND Vorname = ? "; "" ; "" ; Adressen::Nachname ; Adressen::Vorname )

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 10 Werte aus einem Datensatz holen SQLQueryAusführen( "SELECT plz, ort, land, strasse FROM Adressen WHERE NOT land = ? "; "" ; "" ; "AT" ) //end SQLQuery  55116,Mainz,DE, Helmut Kohl Allee 12  8000,Zürich,CH,Bankenplatz 1  1100,Wien,, Paradeplatz 12

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 11 Einsatz im FileMaker-Script Beispiel: Neue Person anlegen Script ausführen[ fn.TroiDL_Input["Title =" & "Neue Person" & ¶ & "Labels =Name#Vorname " & ¶ &)" Aus Datei:“LL4_Toolbox”; (…) Variable setzen [ $Selection;Wert:HoleWert( Hole( ScriptErgebnis ) ; 1) ] Wenn [ $Selection = 1 ] Variable setzen [ $Nachname;Wert:HoleWert( Hole( ScriptErgebnis ) ; 2) ] Variable setzen [ $Vorname;Wert:HoleWert( Hole( ScriptErgebnis ) ; 3) ] Variable setzen [ $Matches;Wert:SQLQueryAusführen( "SELECT \"_pk_GUID\", \"d_Nachname_t\", \"d_Vorname_t\", \"d_Geburtsort_t\", \"d_Geburtsjahr_n\" FROM DAutor WHERE LOWER( d_Nachname_t ) = ?" & Falls( NICHT IstLeer( $Vorname) ; " AND LOWER( d_Vorname_t )= ?") & " ORDER BY d_Nachname_t, d_Vorname_t"; ", " ; "" ; Kleinbuchstaben( $Nachname ); Kleinbuchstaben( $Vorname )) ] Wenn [ NICHT IstLeer( $Matches ) ] Script ausführen[ "fn.TroiDL_SelectFromList["Text =" & _::AuswahlDatensatzOderNeu ; & "¶" & "B1 =OK ¶B2 =Neu ¶B3 =NeueSuche ¶B4 =Abbruch ¶" Aus Datei: “LL4_Toolbox”; (…) (…)

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 12 Liste verschiedener Werte holen SQLQueryAusführen("SELECT d_AutorNachname_t, d_AutorVorname_t FROM DTitel WHERE LOWER( d_ort_t ) = ?" ; ", ";"dublin")  Connolly, James  Mitchell, Arthur  Martin, F.X.  Nowlan, Kevin B.  O'Broin, Leon  Nevin, Donal  Cronin, James  Lalor, Fintan  Nowlan, Kieran

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 13 Liste verschiedener Werte holen II SQLQueryAusführen("SELECT DISTINCT d_AutorNachname_t, d_AutorVorname_t FROM DTitel WHERE LOWER(d_ort_t) = ? ORDER BY d_AutorNachname_t, d_AutorVorname_t" ; ", " ; "dublin")  Connolly, James  Cronin, James  Lalor, Fintan  Martin, F.X.  Mitchell, Arthur  Nevin, Donal  Nowlan, Kevin B.  Nowlan, Kieran  O'Broin, Leon

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 14 Array gruppierter Summen holen SQLQueryAusführen( "SELECT d_Ort_t, COUNT(d_Titel_t) FROM DTitel GROUP BY d_Ort_t"; "" ; "") ,24  Dublin,1  Frankfurt,1  Frankfurt a.M,1  Frankfurt am Main,2  Hamburg,2  Stuttgart,1  Zürich,2

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 15 Array im Script einsetzen Beispiel: Show count of distinct Values Variable setzen [$Feldname; Wert: Get( ActiveFieldName)] Variable setzen [$Tabelle; Wert: Get( LayoutTableName)] Variable setzen [$Query; Wert: "echo fm_sql_select(\"Select COUNT( DISTINCT " & $Feldname & ") FROM " & $Tabelle & "\");"] Variable setzen [$Result; Wert:PHP_Execute ($Query)] Eigenes Dialogfeld anzeigen ["Unique values of " & $Feldname; $Result]

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 16 ExecuteSQL ("SELECT Ti.d_Titel_t, Ti.d_Ort_t, Ti.d_Datierung_t, Au.d_Nachname_t, Au.d_Vorname_t, Au.d_Geburtsort_t, Au.d_Geburtsjahr_n FROM DTitel Ti, DAutor Au WHERE Ti.d_Ort_t = ? AND Ti.\"_fk_Autor\"=Au.\"_pk_GUID\" ORDER BY Au.d_Nachname_t ASC";"";""; "Dublin") ExecuteSQL ("SELECT Ti.d_Titel_t, Ti.d_Ort_t, Ti.d_Datierung_t, Au.d_Nachname_t, Au.d_Vorname_t, Au.d_Geburtsort_t, Au.d_Geburtsjahr_n FROM DTitel Ti JOIN DAutor Au ON Ti.\"_fk_Autor\" = Au.\"_pk_GUID\" WHERE Ti.d_Ort_t = ? ORDER BY Au.d_Nachname_t ASC";"";""; "Dublin") Join oder: One Night Stand statt Beziehung

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 17 Script mit Join #Ruft die Titel auf, bei denen Publikationsort gleich Geburtsort des Autors ist Variable setzen [ $Result ; Wert:SQLQueryAusführen ( " SELECT Ti.\"_pk_GUID\" FROM DTitel Ti JOIN DAutor Au ON Ti.\"_fk_Autor\" = Au.\"_pk_GUID\" AND Ti.\"d_Ort_t\" = Au.\"d_Geburtsort_t\" ORDER BY Au.\"d_Nachname_t\" ASC"; "";"") ] Wenn [ NICHT IstLeer( $Result ) ] Feldwert setzen [ DGlobals::v_TitelID_tg ; $Result ] Fenster fixieren Gehe zu Layout [ “DGlobals” (DGlobals) ] Gehe zu Bezugsdatensatz[ Aus Tabelle: “DGlobals.Titel” ; Mit Layout: “lst.Titel” (DTitel), Nur Bezugsdatensätze zeigen ] Ende (wenn)

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 18 Mit Plugins SQL ausschöpfen Erweiterte Möglichkeiten durch INSERT, UPDATE & DELETE Erweiterte Möglichkeiten durch PHP-Programmierung

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 19 Plugins im Markt 2empower FM SQL Runner Reines SQL-Plugin, kostenlos, FM-Daten lesen in Versionen pre-12 myFMButler DoSQL Lesen und schreiben in FM via SQL, unterstützt neben SELECT, INSERT, UPDATE und DELETE auch CREATE, ALTER und DROP Monkeybread MBS SQL Connection Unterstützt SELECT, INSERT, UPDATE und DELETE Umfangreicher Befehlssatz Scodigo Smartpill Unterstützt SELECT, INSERT, UPDATE und DELETE Stellt Umgebung für PHP zur Verfügung 360Works ScriptMaster4 Unterstützt SELECT, INSERT, UPDATE und DELETE Stellt Umgebung für Groovy(Java) zur Verfügung

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 20 CAVEAT!  Ab hier geht es Ihren Daten an den Kragen!  Testen, testen und nochmal testen  Varianten erproben  Save often, save early fm_sql_Execute(" INSERT INTO Autor (Nachname, Vorname) VALUES ('Sarasin','Philipp')"); ") fm_sql_Execute(" UPDATE Autor SET \"ID\"='99ab23'; ")

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 21 Datensatz einfügen (INSERT INTO) Allgemeine Form: fm_sql_Execute( \"INSERT INTO " & $Database & " (" & $Names & ") " & " VALUES (" & $Values & ")\");" Beispiel: echo fm_sql_Execute( "INSERT INTO DTitel ( _fk_Autor, _pk_GUID, d_AusgabeSeite_t, d_AutorNachname_t, d_AutorVorname_t, d_CoAutoren_t, d_Datentyp_t, d_Datentyp2_t, d_Datierung_t, d_Kurztitel_t, d_Reihe_t, d_Titel_t, s_AenderungName_t, s_AenderungZeit_ts, s_ErstellungName_t, s_ErstellungZeit_ts ) VALUES ( 'A_WFMDAABX8JWWKLAKJ.MN ', 'HPYWWJVG5FP92U5VC.MN ', '8-14', 'Dyk', 'Silke', 'Stephan Lessenich', 't', 'Aufsatz', '2010', 'Potentiale des Alters', 'Mittelweg 36, 19. Jg.', 'Die Potentiale des Alters und die Soziologie', 'nb', ' :45:05', 'ps', ' :50:13' ) ");

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 22 Datensatz aktualisieren (UPDATE) Allgemeine Form: fm_sql_Execute( \"UPDATE " & $Database & " SET " & $NamesValues & " WHERE ID = '" & $ID & "'\");" Beispiel:: echo fm_sql_Execute( " UPDATE Titel SET \"_fk_Autor\"='A_WFMDAABX8JWWKLAKJ.MN ', \"_fk_Bibliothek\"='25634', \"d_Titel_t\"=' Diskursanalyse meets Gouvernementalitätsforschung : Perspektiven auf das Verhältnis von Subjekt, Sprache, Macht und Wissen', (…) \"s_ZoteroKey_t\"='17F2YA89', WHERE _pk_GUID = 'HPYWWJVG5FP92U5VC.MN ' ");

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 23 INSERT & UPDATE fm_sql_Execute(" INSERT INTO Autor (ID) VALUES ('99ab23')"); ") fm_sql_Execute(" UPDATE Autor SET \"Nachname\"='Sarasin', \"Vorname\"='Philipp' WHERE \"ID\" = '99ab23'; ")

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 24 Datensatz löschen (DELETE) Let( $Command = "echo fm_sql_execute( \" DELETE FROM " & table & " WHERE \\\"_pk_GUID\\\"='" & id & "' \");"; PHP_Execute ($Command) ) LETZTE WARNUNG: NICHT SO Let( $Command = "echo fm_sql_execute( \" DELETE FROM " & table \");"; PHP_Execute ($Command) )

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 25 Exkurs: Erweiterte Möglichkeiten durch PHP- Programmierung Beispiel: Daten verschlüsseln Variable setzen [$PW; Wert:"IchBinGeheim"] Variable setzen [$Text; Wert:Get ( ActiveFieldContents )] Variable setzen [$Query; Wert:"$cipher = MCRYPT_RIJNDAEL_128;$key = hash('md5', '" & $PW & "');$iv_size = mcrypt_get_iv_size($cipher, MCRYPT_MODE_ECB);$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);$crypt_text = mcrypt_encrypt($cipher, $key, '" & $Text & "', MCRYPT_MODE_ECB, $iv);$Result = base64_encode($crypt_text);echo $Result;"] Variable setzen [$Result; Wert:PHP_Execute ( $Query )] Variable setzen [$Error; Wert:PHP_GetLastError] Feldwert setzen [; $Result] Gehe zu Feld []

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 26 Exkurs: Erweiterte Möglichkeiten durch PHP- Programmierung Beispiel: Anzahl Werte ausgeben Variable setzen [$Feldname; Wert:Get( ActiveFieldName)] Variable setzen [$Tabelle; Wert:Get( LayoutTableName)] Variable setzen [$Query; Wert:"echo fm_sql_select(\"Select COUNT( DISTINCT " & $Feldname & ") FROM " & $Tabelle & "\");"] Variable setzen [$Result; Wert:PHP_Execute ( $Query )] Variable setzen [$Error; Wert:PHP_GetLastError] Eigenes Dialogfeld anzeigen ["Unique values of " & $Feldname; $Number]

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 27 Funktionsbibliotheken am Beispiel Smartpill  Den Function-Maker nutzen  Tests definieren  Sets erstellen

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 28 Funktionen zur Laufzeit laden Laden aus lokalen Dateien SetzeVar[ $Result ; Value:PHP_LoadFunctions ] Laden via URL SetzeVar[ $result; Value:PHP_LoadFunctionsFromURL ( " ) ]

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 29 Further reading filemakerhacks.com: FM 12 ExecuteSQL: Robust Coding, part 1 Wikibooks: Einführung in SQL

FileMaker Konferenz 2012 Salzburg Nicolaus Busch, N. Busch GmbH SQL-Kommandos 30 FileMaker Konferenz2010 Vielen Dank unseren Sponsoren Danke für das Bewerten dieses Vortrages