Georg: Befehl INSERT INTO

Hallo liebe Leute im Forum!

Vielleicht kann mir irgendwer bei folgendem Problem helfen:

Ich möchte mit dem Befehl INSERT INTO etwas in eine Microsoft Access Datenbank einfügen. Eine meiner Spalten in der Access Datenbank heißt Text.

Wenn ich nun einfüge:

strInsert = "INSERT INTO Konto (Name,Adresse,Telefon,Text) VALUES
('"&Name&"','"&Adresse&"','"&Telefon&"','"&Text&"')"
      conn.Execute strInsert

Erhalte ich die Fehlermeldung

Microsoft JET Database Engine error '80040e14'
Syntax error in INSERT INTO statement.

Gehe ich nun in die Datenbank und benenne die Spalte "Text" um in "Text1" und füge mit dem Befehl

strInsert = "INSERT INTO Konto (Name,Adresse,Telefon,Text1) VALUES
('"&Name&"','"&Adresse&"','"&Telefon&"','"&Text&"')"
      conn.Execute strInsert

ein, funktioniert das Ganze absolut problemlos.
Offenbar darf die Spalte nicht Text heißen ...
Jetzt werdet ihr vielleicht sagen: Na gut, dann ist das Problem ja gelöst ...
Die Schwierigkeit ist nur, daß das jetzt meine Testdatenbank ist. Letztendlich soll ich dieses Skript aber für eine bereits existierende Datenbank erstellen, die ich nicht verändern kann. Das heißt, dort heißt diese Spalte so ... punkt.

Hat wer von euch einen Vorschlag, was ich tun könnte?

lg
Georg

  1. Hi,

    also in Access kann man Spalten mit Sonderzeichen (sei es ü, ä, " " oder sonst was) normalerweise mit eckigen Klammern ansprechen:
    strInsert = "INSERT INTO Konto (Name,Adresse,Telefon,[Text]) VALUES
    ('"&Name&"','"&Adresse&"','"&Telefon&"','"&Text&"')"

    (Das geht mit allen Spalten, du kannst der Einheitlichkeit wegen auch einfach alle Spalten in eckige Klammern schreiben)

    MfG
    Rouven

    --

    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
    1. Danke für deine schnelle Hilfe!
      Das Problem ist damit gelöst. Hab alles Mögliche ausprobiert ... angefangen über ' bis & und " ... aber auf [] bin ich nicht gekommen :-)
      Auf den Seiten, wo ich mir die Befehle angesehen habe, ist es immer ohne irgendein Zeichen gestanden ...
      MfG
      Georg

      Hi,

      also in Access kann man Spalten mit Sonderzeichen (sei es ü, ä, " " oder sonst was) normalerweise mit eckigen Klammern ansprechen:
      strInsert = "INSERT INTO Konto (Name,Adresse,Telefon,[Text]) VALUES
      ('"&Name&"','"&Adresse&"','"&Telefon&"','"&Text&"')"

      (Das geht mit allen Spalten, du kannst der Einheitlichkeit wegen auch einfach alle Spalten in eckige Klammern schreiben)

      MfG
      Rouven