Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

vba und mysql

Forumthread: vba und mysql

vba und mysql
15.05.2009 07:54:38
Heiko
hallo alle,
ich möchte mittels vba messwerte in eine mysql-datenbank speichern. dazu belege ich meinen sql-string wie folgt:
sql = "SELECT @artnum_sn := (SELECT sn FROM " & tbl_artnum & " WHERE dkwnum='" & artikel & "'); " & _
"INSERT INTO " & tbl_messpunkte & " (artikel,mp_int,soll,otg,utg,tolzone,versionn) " & _
"VALUES (@artnum_sn,'" & mpnum & "','" & mpsoll & "','" & mpotg & "','" & mputg & "','" & mptolzone & "','" & Trim(Date) & "');"
mysqlconn.execute(sql)
das sieht mit werten dann so aus:
SELECT @artnum_sn := (SELECT sn FROM artnum_test WHERE dkwnum='71086002021'); INSERT INTO messpunkte_test (artikel,mp_int,soll,otg,utg,tolzone,versionn) VALUES (@artnum_sn,'1','54.000','0.100','-0.100','','15.05.2009');
das problem ist, dass das sql-kommando aus vba auf einen syntax-fehler läuft:
----schnipp----
... right syntax to use near 'INSERT INTO messpunkte_test
(artikel,mp_int,soll,otg,utg,tolzone,versionn) VALUE' at line 1
---- schnapp----
im mysql-query-browser jedoch anstandslos ausgeführt wird.
warum?
heiko
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Blöde Frage : Ist der Doppelpunkt korrekt ?
15.05.2009 08:42:12
NoNet
Hallo Heiko,
eins vorweg : Ich habe NULL PLAN von MySQL, aber mir fällt der Operator := auf.
Gibt es diesen Operator in MySQL ? Unter SQL kenne ich ihn nicht und hier ist er auch nicht aufgelistet :
http://msdn.microsoft.com/en-us/library/ms187330.aspx
Ist der Doppelpunkt etwa zu viel oder hat dieser hier eine Bedeutung ?
Gruß, ahnungsloser NoNet ;-)
Anzeige
AW: Blöde Frage : Ist der Doppelpunkt korrekt ?
15.05.2009 09:32:43
Heiko
hallo nonet,
ja, ist er. die spalte "artikel" in messpunkte_test ist ein fremdschlüssel auf die spalte "dkwnum" in artnum_test. mit "@artnum_sn :=" wird die satznummer (sn) passend zum artikel zugewiesen.
heiko
AW: Blöde Frage : Ist der Doppelpunkt korrekt ?
15.05.2009 11:22:40
Luschi
Hallo Heiko,
da fällt mit auf Anhieb der Begriff "Pass-Through Abfrage" ein. Wie man die erstellt siehe:
http://support.microsoft.com/kb/508366/de
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Blöde Frage : Ist der Doppelpunkt korrekt ?
15.05.2009 12:25:43
Heiko
hallo luschi,
der artikel bezieht sich auf alte access versionen, und ist so nicht verwertbar. u.a. existiert der datentyp querydef nicht mehr.
aber deinen hinweis der "pass-through-abfrage" werde ich mal weiterverfolgen.
heiko
AW: Blöde Frage : Ist der Doppelpunkt korrekt ?
15.05.2009 17:23:37
Luschi
Hallo Heiko,
Du hast Recht, daß dieses Beispiel für Access-97 aufbereitet wurde. Aber QueryDef gibt es nach wie vor, wenn man mit der Datenzugriffsmethode 'DAO' statt 'ADODB' arbeitet.
Sinn und Zweck einer "Pass-Through Abfrage" ist es doch, das Vba den übergebenen SQL-String nicht auf auf Syntax überprüft, sondern einfach weiterreicht an die richtige Datenquelle.
Und sowas gibt es auch bei ADODB/ADOX.
Ein Beitrag dazu: http://support.microsoft.com/kb/304323/de
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Blöde Frage : Ist der Doppelpunkt korrekt ?
18.05.2009 10:50:58
Heiko
hallo luschi,
das mit der passtrough- abfrage hat so nicht funktioniert (siehe auch: http://support.microsoft.com/kb/185125/de).
ich mache jetzt halt einzelabfragen draus, und setze die ergebnisse ins "insert into" statement, dann geht's auf jeden fall.
danke.
heiko
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige