Markus: ASP Zugriff auf eine Access DB

Hi Leute!

Möchte folgendes realisieren was zum Teil schon funktioniert!

Hab ein Eintragungsformular (form.htm) dass nach dem ausfüllen an eine Bestätigungsseite (best.asp) gesendet wird. (funktioniert soweit)

auf der Bestätigungsseite werden die Daten in eine Access DB geschrieben und gleichzeitig wird ein Mail mit den Daten an den User geschickt (funktioniert auch) Hier der Code für das Eintragen der Daten:

<%
   Dim myConnString
 Dim myConnection
 Dim mySQL

myConnString = Application("Immo_ConnectionString")

Set myConnection = Server.CreateObject("ADODB.Connection")

myConnection.Open myConnString

mySQL= "INSERT INTO Immo "
mySQL= mySQL & "(Passwort,Zimmer,Ort,Preis,Telefon,Grundflaeche) "
 mySQL= mySQL & "VALUES ('" & Request.Form("Passwort") & "','"
mySQL= mySQL & Request.Form("Zimmer") & "'"
 mySQL= mySQL & ",'" & Request.Form("Ort") & "'"
 mySQL= mySQL & ",'" & Request.Form("Preis") & "','"
mySQL= mySQL & Request.Form("Telefon") & "','"
 mySQL= mySQL & Request.Form("Grundflaeche") & "')"

myConnection.Execute mySQL

myConnection.Close

Set myConnection = Nothing

Der oben genannte Code erzeugt den Eintrag in meiner DB..

nun wird mittels JMail ein Mail mit dem selben Eintrag geschickt:

Set JMail = Server.CreateObject("JMail.SMTPMail")
 JMail.ServerAddress = "meinserver.xxx"
 JMail.Sender = "meinemail.xxx"
 JMail.Subject = "TEST"
 JMail.AddRecipient Request.Form("EMail")
 JMail.HTMLBody = "<html><body>...." & Request.Form("Passort") & ...

JMail.Logging = true
 JMail.Silent = true

JMail.Execute

funktioniert auch sehr gut!

Nun aber mein Problem:

Möchte dem User auch seine ID zuschicken die automatisch bei dem Eintrag erzeugt wird damit er später auch evtl. auf seinen  Eintrag in Zusammenhang mit dem Passwort + ID zugreifen kann.

Wie greife ich jetzt bei der Mail auf die Datenbank zu bzw wie und wo muß ich da noch was einbauen bin leider beim Programmieren ein Leihe (aber müßte irgendwie mit rs.ID gehen od so)

Wer kann mir da bitte weiterhelfen?

Danke

MFG
Markus

  1. Hi!

    Nun aber mein Problem:

    Möchte dem User auch seine ID zuschicken die automatisch bei dem Eintrag erzeugt wird damit er später auch evtl. auf seinen  Eintrag in Zusammenhang mit dem Passwort + ID zugreifen kann.

    Wie greife ich jetzt bei der Mail auf die Datenbank zu bzw wie und wo muß ich da noch was einbauen bin leider beim Programmieren ein Leihe (aber müßte irgendwie mit rs.ID gehen od so)

    Wer kann mir da bitte weiterhelfen?

    Ich hoffe ich... :-)

    Zuerst mal darfst du myConnection nicht schließen nach den Einträgen. Wenn man davon ausgeht, dass die ID als AutoWert erstellt wird, dann müsste es so gehen, dass du vor dem JMail-Aufruf ein Recordset öffnest:

    myRecordset = Server.CreateObject("ADODB.Recordset")

    Dann holst du dir den Eintrag mit der höchsten ID; das müsste der eben eingetragene sein, deswegen ist das mit dem AutoWert auch richtig:

    myRecordset.open "SELECT id FROM [Tabellenname] ORDER BY id DESC", myConnection

    Das DESC ordnet die EInträge absteigend, also mit der höchsten ID (und damit dem letzten EIntrag) als erstem Record. Die  Zeile JMail.HTMLBody muss entsprechend ergänzt werden:

    JMail.JTMLBody = "<html>" ....... & myRecordset("id") .......

    Hoffe, das ist richtig und vor allem verständlich! :-)

    Gruß,
    der Juve

    1. Hi

      Danke für deine rasche Antwort

      werde es gleich mal testen..

      Dann holst du dir den Eintrag mit der höchsten ID; das müsste der eben eingetragene sein, deswegen ist das mit dem AutoWert auch richtig:

      Ist das auch wirklich sicher? mit der höchsten ID?

      Was ist wenn mehrere gleichzeitig eintragen? Hatte mal so ein ähnliches Problem war allerdings damals mit der Funktion "Last" ausgestattet u da kamm es zu konfliktion ist es hier sicher?

      myRecordset.open "SELECT id FROM [Tabellenname] ORDER BY id DESC", myConnection

      Das DESC ordnet die EInträge absteigend, also mit der höchsten ID (und damit dem letzten EIntrag) als erstem Record. Die  Zeile JMail.HTMLBody muss entsprechend ergänzt werden:

      Danke MFG
      Markus

      1. Hallo,

        Dann holst du dir den Eintrag mit der höchsten ID; das müsste der eben eingetragene sein, deswegen ist das mit dem AutoWert auch richtig:

        Ist das auch wirklich sicher? mit der höchsten ID?

        Was ist wenn mehrere gleichzeitig eintragen? Hatte mal so ein ähnliches Problem war allerdings damals mit der Funktion "Last" ausgestattet u da kamm es zu konfliktion ist es hier sicher?

        100%ig nicht, aber ich hab´s bis jetzt immer so gemacht, und in der Praxis bekam - meines Wissens - immer jeder genau das, was er brauchte. Wenn natürlich 1000 Leute sich pro Sekunde da irgendwie eintragen, kann das schon durcheinander kommen, da weiß ich dann so aus dem Kopf auch keine Lösung.

        Gruß,
        der Juve

        1. Danke Juve die Lösung funktioniert mal in der Testphase super!

          in der Praxis muß man es halt testen!

          Weil derjenige bekommt dann von mir seine ID und sein Passwort zugeschickt und wenn da was durcheinander kommen würde wäre es nicht so gut.
          Aber vl würde es zusätzlich eine Möglichkeit geben das mit dem Passwort und letzten Eintrag od so abzusichern...

          Nur mit Passwort alleine geht ja auch nicht denn es könnten ja mehrere das gleiche haben(theoretisch)

          Ein Anderes Problem wie könnte ich in dem Eintragungsformular (form.htm)

          noch ein Bild zum "Upload" anbieten dass dann ebenfalls in die Datenbank kommen würde und später dann wieder von dort abgerufen werden kann.

          MFG
          Markus

          1. Freut mich wenn´s gefällt! :-)

            Um es ein wenig sicherer zu haben, würd ich auf jeden Fall Melanies Idee mit der Variablen beachten.

            Weiterhin viel Spaß!

            Gruß,
            der Juve

            --
            Operator. Nonprint. Noch Fragen?? :)
            1. Danke nochmals

              Wie geht das mit den Variablen hab das nicht gecheckt an meinem Beispiel?

              Kannst du mir das genauer erklären?

              Hast du auch eine Idee zu der "Upload" Variante?

              Um es ein wenig sicherer zu haben, würd ich auf jeden Fall Melanies Idee mit der Variablen beachten.

              MFG
              Markus

      2. Dann holst du dir den Eintrag mit der höchsten ID; das müsste der eben eingetragene sein, deswegen ist das mit dem AutoWert auch richtig:

        Ist das auch wirklich sicher? mit der höchsten ID?

        Was ist wenn mehrere gleichzeitig eintragen? Hatte mal so ein ähnliches Problem war allerdings damals mit der Funktion "Last" ausgestattet u da kamm es zu konfliktion ist es hier sicher?

        100&ig sicher ist es nicht, allerdings hat bei mir in der praktischen Umsetzung immer jeder genau das bekommen, was er brauchte - meines Wissens nach zumindest. Wenn sich allerdings 1000 Leute auf einmal eintragen, kann es schon zu Verwirrungen kommen, denke ich mal - aber da weiß ich jetzt aus dem Stand auch keine Lösung für.

        Gruß,
        der Juve

      3. Hallo,

        Ist das auch wirklich sicher? mit der höchsten ID?

        Es ist nicht wirklich sicher.
        Besser ist mit addNew zu arbeiten. Sowas in der Richtung wie:

        RS.Open tableName, myConnection, adOpenKeySet, adLockOptimistic, adCmdTable
        RS.AddNew
        RS("feld1") = wert1
        RS("feld2") = wert2
        RS.Update
        neueID = RS("NameDesIDFelds")

        Gruss, Melanie

        1. Hi,

          Ist das auch wirklich sicher? mit der höchsten ID?
          Es ist nicht wirklich sicher.
          Besser ist mit addNew zu arbeiten.

          Der Effekt ist doch der selbe, oder nicht? Der einzige - und durchaus sinnvolle! - Unterschied ist, dass bei deiner Lösung die neue ID sofort nach dem Eintrag in eine Variable gespeichert wird - es entstehen keine Verzögerungen, während der ein anderer User einen EIntrag machen und somit die höchste ID bekommen könnte.

          Gruß,
          der Juve

          1. Hi,

            Der Effekt ist doch der selbe, oder nicht? Der einzige - und durchaus sinnvolle! - Unterschied ist, dass bei deiner Lösung die neue ID sofort nach dem Eintrag in eine Variable gespeichert wird - es entstehen keine Verzögerungen, während der ein anderer User einen EIntrag machen und somit die höchste ID bekommen könnte.

            Wenn nur eine Person die Datenbank benutzt ist es natuerlich kein Problem, aber in allen einigermassen professionellen Umstaenden ist kann es zu ueblen Problemen kommen - zwar ist die Wahrscheinlichkeit nicht hoch, aber hoch genug. Deswegen wird im allg. davon abgeraten mit max(ID) oder aehnlichem zu arbeiten um die ID zurueckzukriegen.
            Durch das AddRow ist die neue ID Teil des Recordsets, und kann so weiter verwurschtet werden, und man kann sicher sein die richtige ID zu bekommen.

            Gruss, Melanie

            1. Hi Melanie

              Es greifen bei mir mehrere User zu manchmal sogar gleichzeitig..

              Wie würde deine Methode in meinem Beispiel aussehen bin leider ein Leihe auf dem Gebiet. Vl könntest du mir bitte bei der Code-Erstellung helfen..

              Wenn nur eine Person die Datenbank benutzt ist es natuerlich kein Problem, aber in allen einigermassen professionellen Umstaenden ist kann es zu ueblen Problemen kommen - zwar ist die Wahrscheinlichkeit nicht hoch, aber hoch genug. Deswegen wird im allg. davon abgeraten mit max(ID) oder aehnlichem zu arbeiten um die ID zurueckzukriegen.
              Durch das AddRow ist die neue ID Teil des Recordsets, und kann so weiter verwurschtet werden, und man kann sicher sein die richtige ID zu bekommen.

              Danke im Voraus...

              MFG Markus

              1. Hi Markus,

                Erst ein Meeting, dann Computercrash...  Jedenfalls, fuer eine etwas naehere Erklaerung siehe 2 Nachrichten weiter oben.

                Melanie

        2. Hi Melanie

          Ganz hab ich es leider noch nicht verstanden:

          Besser ist mit addNew zu arbeiten. Sowas in der Richtung wie:

          RS.Open tableName, myConnection, adOpenKeySet, adLockOptimistic, adCmdTable

          RS.AddNew
          RS("feld1") = wert1
          RS("feld2") = wert2
          RS.Update
          neueID = RS("NameDesIDFelds")

          Wo wird jetzt die ID Nummer vergeben?

          Soll ich eine neue Spalte einfügen?

          Habe bereits ein Feld "ID" mit dem Autowert!

          was meinst du mit:

          RS.AddNew
          RS("feld1") = wert1
          RS("feld2") = wert2
          RS.Update
          neueID = RS("NameDesIDFelds")

          MFG
          Markus

          1. Hi,

            Arg, hatte eine wunderschoene Antwort komponiert, und dann beim Abschicken - bluescreen.

            Also nochmal. Der Code ersetzt Dein altes Insert Statement. Das select Statement danach fuer die ID ist nicht mehr noetig.
            Wert1, wert2 etc sind einfach die Parameter die Du in Die Datenbank einsetzen willst. feld1, feld2 etc sind entsprechend die Spaltennamen in der Tabelle. RS ist dein Recordset (das natuerlich vorher mit server.createObject geschaffen werden muss). Durch das Verwenden von AddNew ist die autogenerierte ID, die ja von Access kommt, Teil des Recordsets. Und kann somit mit RS("ID") gleich angesprochen werden. Vorteil ist dass es sich dabei mit Sicherheit um die korrekte ID handelt.

            RS.Open tableName, myConnection, adOpenKeySet, adLockOptimistic, adCmdTable

            RS.AddNew
            RS("feld1") = wert1
            RS("feld2") = wert2
            RS.Update
            neueID = RS("NameDesIDFelds")

            Ich hoffe es ist jetzt etwas klarer.

            Gruss, Melanie

            1. Hi Melanie!

              Danke dass du dich damit beschäftigst! Sorry wegen dem Absturz

              habs jetzt so gebaut: (Stimmt das?)

              <%
                 Dim myConnString
               Dim myConnection
               Dim mySQL

              Dim rs

              myConnString = Application("Immo_ConnectionString")

              Set myConnection = Server.CreateObject("ADODB.Connection")

              myConnection.Open myConnString

              set rs = server.createobject("adodb.recordset")

              rS.Open Immo, myConnection, adOpenKeySet, adLockOptimistic, adCmdTable

              rs.AddNew
              rs("Wohnflaeche") = Request.Form("Wohnflaeche")
              rs("Zimmer") = Request.Form("Zimmer")
              rs("Ort") = Request.Form("Ort")
              rs("Preis") = Request.Form("Preis")
              rs("Grundflaeche") = Request.Form("Grundflaeche")

              rs.Update

              Set JMail = Server.CreateObject("JMail.SMTPMail")
               JMail.ServerAddress = "xxx.de"
               JMail.Sender = "xxx"
               JMail.Subject = "Test"
               JMail.AddRecipient Request.Form("EMail")
               JMail.HTMLBody = "<html><body>" & rs("ID") & "..."
               JMail.Logging = true
               JMail.Silent = true

              Funktioiert es so richtig? und stimmt der zugriff mit rs("ID") im body?

              Was bedeudet?:

              adOpenKeySet?

              adLockOptimistic?

              adCmdTable?

              Was muß ich noch ändern?

              Danke im voraus!

              MFG
              Markus

              1. Hi,

                Funktioiert es so richtig? und stimmt der zugriff mit rs("ID") im body?

                Es sieht ok aus. Hast Du's denn mal getestet? First rule of debugging: Bevor Du Test-Emails abschickst, lass Dir erstmal die ID zum Testen (und Vergleichen mit Access) mit response.write ausgeben.

                Was bedeudet?:

                »

                adOpenKeySet?
                adLockOptimistic?
                adCmdTable?

                adOpenKeyset etc sind ADO Konstanten, die im ADOVBS.INC file definiert sind (so Du noch nicht verwendet hast, bei IIS ist es dabei - die Suchfunction Deines OS sollte es finden, es muss in die Root Deines Webprojekts und als include am Anfang Deiner ASPSeiten eingebunden werden. Macht das Leben leichter, da Du sonst werte wie "&H002" im Code verwenden muesstest). Und weil ich heute besonders gut gelaunt bin, hier ein Link mit etwas mehr Info: http://www.aspheute.com/artikel/20000518.htm

                Gruss, Melanie

                1. Hi

                  Habe es getestet funktioniert leider nicht

                  Bekomm folgende Fehlermeldung:

                  ADODB.Recordset- Fehler '800a0bb9'

                  Die Argumente sind vom falschen Typ, liegen außerhalb des Gültigkeitsbereiches oder sind miteinander unvereinbar.

                  Was könnte da falsch sein?

                  Es sieht ok aus. Hast Du's denn mal getestet? First rule of debugging: Bevor Du Test-Emails abschickst, lass Dir erstmal die ID zum Testen (und Vergleichen mit Access) mit response.write ausgeben.

                  Schicke die Mails nur an mich selbst*g* aber hast schon recht!

                  Kannst du mir bitte weiterhelfen?

                  Danke

                  MFG
                  Markus

                  1. Hi,

                    ADODB.Recordset- Fehler '800a0bb9'

                    Die Argumente sind vom falschen Typ, liegen außerhalb des Gültigkeitsbereiches oder sind miteinander unvereinbar.

                    D.h. im allgemeinen dass die Konstanten sind nicht definiert sind auf der ASP Seite - hast du das ADOVB.INC gefunden, in die richtige Stelle kopiert und  eingebunden  <!--#include file="adovbs.inc"-->, und wenn ja, enthaelt es die adXXX Konstanten die das Skript anspricht?

                    Alternative waere, die eigentlichen Werte anstelle der Konstanten zu nehmen.

                    Statt: RS.Open tableName, myConnection, adOpenKeySet, adLockOptimistic, adCmdTable

                    schreibe: RS.Open tableName, myConnection, 1, 3, &H0002

                    Gruss, Melanie

                    1. Hi Melanie

                      Hab jetzt daran gebastelt und habst so gelöst und funktioniert auch: (müßte ja passen oder?):

                      <%

                      Dim lngID

                      Dim conn, rs
                      Dim strConnection

                      strConnection = Application("Immo_ConnectionString")
                      Set conn = CreateObject("ADODB.Connection")

                      conn.Open strConnection

                      Set rs = CreateObject("ADODB.Recordset")
                      rs.CursorLocation = 2   ' adUseServer
                      rs.CursorType     = 1   ' adOpenKeyset
                      rs.LockType       = 3   ' adLockOptimistic

                      strSQL = "SELECT * FROM Immo WHERE ID = 0"

                      rs.Open strSQL, conn

                      rs.AddNew
                      rs("Wohnflaeche")   = Request.Form("Wohnflaeche")
                      rs("Zimmer") = Request.Form("Zimmer")
                      rs.Update

                      lngID = rs("ID")

                      rs.Close
                      conn.Close

                      Response.Write "Die ID ist:  "
                      Response.Write lngID & "<br>" & vbCrLf

                      Set rs   = Nothing
                      Set conn = Nothing
                      %>

                      MFG
                      Markus

                      1. Hi Markus

                        Hab jetzt daran gebastelt und habst so gelöst und funktioniert auch: (müßte ja passen oder?):

                        in der Tat ;-). Wenn's funktioniert is gut.
                        Nur das strSQL statement braucht's meines Erachtens nicht, es sollte ausreichen nur den Table zu oeffnen, mit " rs.Open Immo, conn "

                        Gruss, Melanie

      4. Hallo,

        Ist das auch wirklich sicher? mit der höchsten ID?

        Nicht wirklich. Schau dir mal http://www.aspfaq.de/index.asp?FID=43&ELE=3746 an.
        Da findest du ein Beispiel mit einer anderen (IMO besseren) Methode.

        Tschau, Stefan

        1. Hi Stefan!

          Weiß noch nicht ganz wie ich diese Methode in meinem Beispiel einbauen soll?

          Habs bis jetzt so:

          <%
             Dim myConnString
           Dim myConnection
           Dim mySQL
           Dim rs

          myConnString = Application("Immo_ConnectionString")

          Set myConnection = Server.CreateObject("ADODB.Connection")

          myConnection.Open myConnString

          mySQL= "INSERT INTO Immo "
          mySQL= mySQL & "(Passwort,Zimmer,Ort,Preis,Telefon,Grundflaeche) "
           mySQL= mySQL & "VALUES ('" & Request.Form("Passwort") & "','"
          mySQL= mySQL & Request.Form("Zimmer") & "'"
           mySQL= mySQL & ",'" & Request.Form("Ort") & "'"
           mySQL= mySQL & ",'" & Request.Form("Preis") & "','"
          mySQL= mySQL & Request.Form("Telefon") & "','"
           mySQL= mySQL & Request.Form("Grundflaeche") & "')"

          myConnection.Execute mySQL

          set rs = server.createobject("adodb.recordset")

          rs.open "SELECT ID FROM [Immo] ORDER BY ID DESC", myConnection

          Der oben genannte Code erzeugt den Eintrag in meiner DB..

          nun wird mittels JMail ein Mail mit dem selben Eintrag geschickt:

          Set JMail = Server.CreateObject("JMail.SMTPMail")
           JMail.ServerAddress = "meinserver.xxx"
           JMail.Sender = "meinemail.xxx"
           JMail.Subject = "TEST"
           JMail.AddRecipient Request.Form("EMail")
           JMail.HTMLBody = "<html><body>...." & rs("ID) & "..."

          JMail.Logging = true
           JMail.Silent = true

          JMail.Execute

          myConnection.Close

          Set myConnection = Nothing

          Wo soll ich das jetzt bzw wie baue ich das bitte in meinen obigen Code ein?

          Kannst du mir bitte weiterhelfen

          Wie sicher ist diese Methode? (Um Konflikte auszuschließen?)

          MFG
          Markus

  2. Hallo Markus,

    Möchte dem User auch seine ID zuschicken die automatisch bei dem Eintrag erzeugt wird damit er später auch evtl. auf seinen  Eintrag in Zusammenhang mit dem Passwort + ID zugreifen kann.

    für mysql gibt es eine Funktion namens mysql_insert_id() - vielleicht hat access sowas auch? (php hat eine gleichnamige Funktion die das gleiche bewirkt - ob asp sowas auch hat, weiß ich nicht)

    hth & Grüße aus Nürnberg
    Tobias

    --
    Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
    1. HI Tobias

      Mir ist sowas nicht bekannt - leider?

      vielleicht hat access sowas auch? (php hat eine gleichnamige
      Funktion die das gleiche bewirkt - ob asp sowas auch hat, weiß
      ich nicht)

      hth & Grüße aus Nürnberg
      Tobias

      1. Hallo,

        wenn Du bei access das Feld als Autowert definierst, wird automatisch ein ID generiert beim Eintrag von Daten.

        Meinst Du sowas?

        Gruss
        Wurzel

        1. Hi

          Ja das weiß ich schon aber mein Problem ist auf den genau eingetragenen Datensatzt dann zuzugreifen ohne irgendwelche Verwechslungen..

          MFG
          Markus

  3. Hallo,

    Du solltest auf jeden Fall noch SQL-Injektion vorbeugen.

    mySQL= "INSERT INTO Immo "
    mySQL= mySQL & "(Passwort,Zimmer,Ort,Preis,Telefon,Grundflaeche) "
     mySQL= mySQL & "VALUES ('" & Request.Form("Passwort") & "','"
    mySQL= mySQL & Request.Form("Zimmer") & "'"
     mySQL= mySQL & ",'" & Request.Form("Ort") & "'"
     mySQL= mySQL & ",'" & Request.Form("Preis") & "','"
    mySQL= mySQL & Request.Form("Telefon") & "','"
     mySQL= mySQL & Request.Form("Grundflaeche") & "')"

    Dazu solltest Du vor dem Insert noch die Werte aus dem Form z.B. mit regular expressions überprüfen! Such danach mal auf google...

    Gruss
    Wurzel

    1. Hi

      Was meinst du da genau?

      Verstehe das nicht?

      Du solltest auf jeden Fall noch SQL-Injektion vorbeugen.

      mySQL= "INSERT INTO Immo "
      mySQL= mySQL & "(Passwort,Zimmer,Ort,Preis,Telefon,Grundflaeche) "
       mySQL= mySQL & "VALUES ('" & Request.Form("Passwort") & "','"
      mySQL= mySQL & Request.Form("Zimmer") & "'"
       mySQL= mySQL & ",'" & Request.Form("Ort") & "'"
       mySQL= mySQL & ",'" & Request.Form("Preis") & "','"
      mySQL= mySQL & Request.Form("Telefon") & "','"
       mySQL= mySQL & Request.Form("Grundflaeche") & "')"

      Dazu solltest Du vor dem Insert noch die Werte aus dem Form z.B. mit regular expressions überprüfen! Such danach mal auf google...

      Was soll ich da einfügen bzw. was bewirkt es?

      MFG
      Markus

      1. Moin,

        SQL-Injektion meint, dass jemand in HTML-Formulare Code eingeben kann, der diesem im schlimmsten Fall Zugriff auf alle Deine Daten verschaffen kann.

        Deshalb erst checken, ob Variable aus Formular übergeben wurde:

        Dim zimmer
        if Request.Form("Zimmer") <> "" then zimmer = Request.Form("Zimmer")

        Dann den Input mit regexp überprüfen auf Sonderzeichen, wie '," etc.

        Code weiss ich jetzt nicht auswendig, musst in google unter regexp suchen...

        Was soll ich da einfügen bzw. was bewirkt es?

        Erst wenn der Input aus einem Formular überprüft ist, solltest Du das SQL Statement ausführen, wegen Sicherheitsaspekten.

        Gruss,
        Tobi