SQL Befehl

16/06/2009 - 11:37 von Holger D. | Report spam
Hallo NGs,

ich habe vor einigen Tagen schon mal hier gepostet und die Hilfe hat mir
sehr weitergeholfen!

Nun habe ich jedoch ein Problem mit einem SQL-String, und komme dort nicht
weiter...

Ich schreibe:

SQLstr = "INSERT INTO " & ZielTab & _
" SELECT " & TmpLink & ".* " & _
"FROM " & TmpLink & _
" WHERE " & ZielTab & ".Zahl1 is
Null" & ";"
Debug.Print SQLstr

CurrentDb.Execute SQLstr


Beim Debug.Print erscheint das Ergebnis:

INSERT INTO TestTab SELECT TabtmpLink.* FROM TabtmpLink WHERE TestTab.Zahl1
is Null;

Dabei sollte eigentlich die Access-Tabelle TestTab mit Daten aus der
verknüpften Excel-Tabelle TabtmpLink gefüllt werden. Nach Probieren scheint
es daran zu liegen, dass er die "WHERE"-Klausel so nicht akzeptiert. In
TestTab ist das erste Feld "Zahl1". Lasse ich die WHERE-Klausel weg, so funzt
das... - Dennoch möchte ich ein Anfügen erreichen, in dem ich zuvor abfragen
möchte, welche Werte in ZielTab noch nicht vorhanden sind.

Hat jemand eine Idee, was ich an der Syntax falsch gemacht haben könnte??

Danke für die Hilfe!!

Schöne Grüße,
Holger
 

Lesen sie die antworten

#1 Karl Donaubauer
16/06/2009 - 11:53 | Warnen spam
Holger D. wrote:
ich habe vor einigen Tagen schon mal hier gepostet und die Hilfe hat mir
sehr weitergeholfen!

Nun habe ich jedoch ein Problem mit einem SQL-String, und komme dort nicht
weiter...

Ich schreibe:

SQLstr = "INSERT INTO " & ZielTab & _
" SELECT " & TmpLink & ".* " & _
"FROM " & TmpLink & _
" WHERE " & ZielTab & ".Zahl1 is
Null" & ";"
Debug.Print SQLstr

CurrentDb.Execute SQLstr

Beim Debug.Print erscheint das Ergebnis:

INSERT INTO TestTab SELECT TabtmpLink.* FROM TabtmpLink WHERE
TestTab.Zahl1 is Null;

Dabei sollte eigentlich die Access-Tabelle TestTab mit Daten aus der
verknüpften Excel-Tabelle TabtmpLink gefüllt werden. Nach Probieren
scheint es daran zu liegen, dass er die "WHERE"-Klausel so nicht
akzeptiert. In TestTab ist das erste Feld "Zahl1". Lasse ich die
WHERE-Klausel weg, so funzt das... - Dennoch möchte ich ein Anfügen
erreichen, in dem ich zuvor abfragen möchte, welche Werte in ZielTab noch
nicht vorhanden sind.

Hat jemand eine Idee, was ich an der Syntax falsch gemacht haben könnte??



INSERT INTO fügt Datensàtze an. Daher fragst du mit deiner
WHERE-Klausel sozusagen, ob in den noch nicht vorhandenen
Datensàtzen eh nix in dem Feld Zahl1 drin steht. Zur Lösung s.

Datensàtze aus A, die nicht in B sind
www.donkarl.com?FAQ3.16

HTH
Karl
********* Ich beantworte keine Access-Fragen per Email. *********
Access-FAQ: http://www.donkarl.com

Ähnliche fragen