4 Antworten Neueste Antwort am Jun 1, 2016 4:15 AM von Markus Schneider

    SQL-Abfrage funktioniert nicht

    ene55

      Hallo zusammen,

      ich versuche verzweifelt in FM14 pro adv eine einfache SQL-Abfrage hinzubekommen. Sie soll nur Datensätze anzeigen, die im angegebenen Feld ein 'x' eingetragen haben. Wirklich keine große Sache. Wie auch immer ich die Abfrage gestalte, es kommt immer die Meldung, die Abfrage enthalte einen Fehler. Die Datei liegt auf einem FM 14 Server.

       

      Hier die statische Form der Abfrage, wie sie eigentlich funktionieren sollte.  Feld und Tabelle sollen in der Endversion als Variable übergeben werden:

      Ich habe schon stundenlang an alle nur erdenkliche Stellen Anführungszeichen, Hochkommas, Klammern, mit und ohne "\"  usw. gesetzt. Alles ohne Erfolg. Gebe ich die gleiche Abfrage mit Stern oder mit definierten Feldnamen in der Datenanzeige oder in einer SQL-Datenbank als Query ein, bekomme ich das richtige angezeigt. Nur nicht im Script.

       

      Hat jemand hier im Forum eine Idee, was ich da falsch mache? Andere Abfragen wie SELECT MAX, SELECT COUNT usw. in anderen Datenbanken funktionieren einwandfrei.

       

      Vielen Dank im Vorraus

      Erhard

        • 1. Re: SQL-Abfrage funktioniert nicht
          Markus Schneider

          SQL-Abfrage auf eine FileMaker-Tabelle:

           

          SQLAusfueren, (Funktion!), etwa so:

           

          SQLAusfuehren("SELECT * FROM Schulungen WHERE Name_jar=?";"";"";FeldMitParameter)

           

          Das ? steht fuer den Parameter, der am Schluss angegeben wird (hier ein FileMaker-Feld)

           

          Mehr dazu in der FileMaker Hilfe

           

          Das Resultat steht dann als Text in einem Feld, einer Scriptvariablen. Falls noetig, koennen in einer Hilfstabelle Datensaetze angekegt werden ('view')

           

          Um Datensaetze zu suchen, ist der Suchen-Befehl (-Modus!) geeigneter...

          1 von 1 Personen fanden dies hilfreich
          • 2. Re: SQL-Abfrage funktioniert nicht
            monkeybreadsoftware

            Eventuell noch Feld/Tabellennamen in Anführungszeichen.

            Manchmal meckert FileMaker da.

            1 von 1 Personen fanden dies hilfreich
            • 3. Re: SQL-Abfrage funktioniert nicht
              ene55

              Hallo zusammen,

               

              vielen Dank für die bisherigen Antworten. Nach vielen Versuchen mit Anführungszeichen, Backslashs und Hochkommas bin ich jetzt so weit, dass ich zumindest keine Fehlermeldung mehr bekomme und das Ergebnis in eine Variable einlesen kann. Diese kann ich dann weiterverarbeiten.

               

              Ich bekomme das Ergebnis aber nicht, so wie ich das erhofft habe, als Tabelle angezeigt.

               

              Viele Grüße

              E. Neukum

              1 von 1 Personen fanden dies hilfreich
              • 4. Re: SQL-Abfrage funktioniert nicht
                Markus Schneider

                SQL liefert in meiner Welt an sich einen Textblock mit den Ergebnissen

                 

                Man kann die Tabellendarstellung mit 'Vertikalstrichen' (Pipe) erreichen - oder man holt die Daten per SQL und schreibt das Ergebnis als 'virtuelle Liste' in eine FileMaker-Hilfstabelle. Ist schnell, problemlos - und eine 'view'

                 

                Das Resultat ab SQL kann mit FileMaker als 'Liste' verarbeitet werden

                - Liste()

                - HoleWert(Liste; Eintrags-ZeilenNr)

                 

                mittels Schleife (script) holt man sich Zeilen aus der Liste, separiert einzelne Werte einer Zeile - und schreibt das Ganze in die Tabelle dieser virtuellen Liste...

                Toent viel komplizierter, als es ist (-:

                1 von 1 Personen fanden dies hilfreich