title image


Smiley Re: RunSQL oder Execute
Hallo Carsten,

Wochenende ist zu Ende ...



Ich habe es noch einmal probiert. Es funktioniert, wenn ich denn Code zum ersten Mal ausführe, beim zweiten Mal gibt's einen Laufzeitfehler "Unzulässige SQL-Anweisung; DELETE, INSERT, SELECT oder UPDATE erwartet"



Hintergrund ist, dass ich in der Zieltabelle die jeweiligen Daten nur 1x täglich einfügen will und daher ein Feld aus Datum und einem anderen Schlüssel gebildet habe. Wird die Funktion also ein zweites Mal aufgerufen, gibt es einen Konflikt mit diesem Primärschlüssel. In meiner zugegeben nicht ganz sauberen Variante unterdrücke ich die Meldung zu diesem Konflikt einfach. Hier werde ich nun offenbar gefragt, was mit den schon vorhandenen Datensätzen geschehen soll. Diese Fehlermeldung zu unterdrücken wäre natürlich auch eine Möglichkeit, aber eine stilistisch höchst fragwürdige ...



Damit bin ich wieder bei meinem ersten Posting: wenn ich die Abfrage nur ausführen würde, wenn noch keine Daten vom aktuellen Tag in der Tabelle stehen, wäre das eigentlich die elegantere Lösung.



Dass die Verwendung der DoCmd-Konstrukte nicht gerade einen guten Programmierstil dokumentieren, kann ich nachvollziehen. Mein Gedanke bei dieser Funktion war ja ursprünglich nur, dass ich mir beim Ausführen dieser Abfrage einige Klicks erpare - und da hat DoCmd den Vorteil, dass eben gerade Menükonstrukte emuliert, wie Reinhard schon festgestellt hat.



Ich wünschte mir auch "etwas mehr Stil" und bin daher bin dankbar für jeden Hinweis und für die Geduld, die ich hoffentlich nicht überstrapaziere.



Schönen Wochenstart

Sven





PS

Im Straßenverkehr bewege ich mich wesentlich sicherer, als in Access und VBA. Trotzdem kommt es in Ausnahmefällen vor, dass ich gewisse Regeln nicht ganz einhalte, obwohl ich weiß, dass das ein schlechter Stil ist. Mein relatives Unvermögen bei Access und VBA führt dazu, dass ich hier die Regeln etwas häufiger verletze - und manchmal (vermutlich meistens) merke ich das noch nicht einmal ... ;-)
Ich arbeite mit Office 2003

geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: