Datensätze löschen

28/10/2009 - 15:00 von Andreas Sperling | Report spam
Hallo NG,
ich habe ein Formular mit einem Unterformular. Ziel ist aus einer Exceldatei
Daten in das Unterformular zu importieren. Das habe ich auch schon
realisiert.
Wenn aber bereits Daten in dem Unterformular vorhanden sind, sollen dies vor
dem Import gelöscht werden.

Ich hatte mir Gedacht das ich auf die DatenTabelle vom Unterformular ein Sql
absetze.
Ich habe aber probleme mit folgendem SQL
w_sql = "Delete QryArbeitsaufwandM1.ANR FROM QryArbeitsaufwandM1 WHERE
(((QryArbeitsaufwandM1.ANR)= SA017049))"

Die ANR kommt mehrfach vor.
Laufzeitfehler 3086
1 Parameter wurde erwartet, aber es wurden zu wenig Parameter übergeben.

Eine ID kann ich mit diesem SQL löschen.
w_sql = "Delete QryArbeitsaufwandM1.ID FROM QryArbeitsaufwandM1 WHERE
(((QryArbeitsaufwandM1.ID)= 301))"

Hat jemand eine Idee wie ich mein Problem einfach gelöst bekomme?

Danke
Gruß
Andreas
 

Lesen sie die antworten

#1 Thomas Möller
28/10/2009 - 15:11 | Warnen spam
Hallo Andreas,

Andreas Sperling schrieb:
Hallo NG,
ich habe ein Formular mit einem Unterformular. Ziel ist aus einer Exceldatei
Daten in das Unterformular zu importieren. Das habe ich auch schon
realisiert.
Wenn aber bereits Daten in dem Unterformular vorhanden sind, sollen dies vor
dem Import gelöscht werden.

Ich hatte mir Gedacht das ich auf die DatenTabelle vom Unterformular ein Sql
absetze.
Ich habe aber probleme mit folgendem SQL
w_sql = "Delete QryArbeitsaufwandM1.ANR FROM QryArbeitsaufwandM1 WHERE
(((QryArbeitsaufwandM1.ANR)= SA017049))"



wenn Du einen Text als Parameter übergibst, musst Du diesen in einfache
Anführungszeichen setzen:

WHERE ANR = 'SA017049'


BTW: Den SQL-String kannst Du auch noch etwas kürzen. Das zu löschende
Feld, die überzàhligen Qualifier für die Felder und die überzàhligen
Klammern kannst Du gern weglassen. Am Ende wird daraus:

w_sql = "Delete FROM QryArbeitsaufwandM1 " & _
"WHERE ANR = 'SA017049'"


HTH
Thomas

Homepage: www.Team-Moeller.de

Ähnliche fragen