[GELÖST] Fehler bei SQL UPDATE über ein Makro

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

geimist
****
Beiträge: 191
Registriert: Fr, 15.02.2008 16:10

[GELÖST] Fehler bei SQL UPDATE über ein Makro

Beitrag von geimist »

Hallo,

folgenden SQL-Befehl möchte ich in einem Makro absetzten:

Code: Alles auswählen

sSQL = "UPDATE ""Zusammenkuenfte"" SET ""DZK-Punkt 5 Ende""  = """+tDZK1+""",  WHERE ""Datum"" = """+dDate+""""
oStatement.executeUpdate(sSQL)
Jetzt meckert er, dass er die Tabelle nicht findet, bzw. ein anderes Mal, dass der die Spalte nicht kennt (column not found).
Anbei ein Screenshot des Fehlers sowie in einer msgbox der übergebenen SQL-String.

Ich weiß nicht, ob ein Fehler in der Maskierung liegt, aber ich habe schon alles mögliche probiert.
Dateianhänge
übergebener SQL-Sting
übergebener SQL-Sting
Screen032.jpg (12.71 KiB) 541 mal betrachtet
Fehlermeldung
Fehlermeldung
Screen031.jpg (18.41 KiB) 541 mal betrachtet
Zuletzt geändert von geimist am Di, 01.09.2009 17:00, insgesamt 1-mal geändert.
Gruß
Stephan

LibreOffice 5.3 - MAC OS/X 10.11
gigabert
*****
Beiträge: 203
Registriert: Di, 11.08.2009 16:06

Re: Fehler bei SQL UPDATE über ein Makro

Beitrag von gigabert »

geimist hat geschrieben:Hallo,

folgenden SQL-Befehl möchte ich in einem Makro absetzten:

Code: Alles auswählen

sSQL = "UPDATE ""Zusammenkuenfte"" SET ""DZK-Punkt 5 Ende""  = """+tDZK1+""",  WHERE ""Datum"" = """+dDate+""""
oStatement.executeUpdate(sSQL)
Hallo,

das wird wahrscheinlich nicht der Fehler sein, aber ich denke das Komma vor WHERE sollte weg. Ansonsten kann ich an dem SQL-Code nichts falsches erkennen. Der Tabellenname ist richtig geschrieben?
Jetzt meckert er, dass er die Tabelle nicht findet, bzw. ein anderes Mal, dass der die Spalte nicht kennt (column not found).
Was hast du geändert, dass er einmal die Tabelle und einmal die Spalte nicht kennt?

Gruss
Bert
OpenOffice 3.1.1 unter Debian 5.0 und mit PostgreSQL 8.3
geimist
****
Beiträge: 191
Registriert: Fr, 15.02.2008 16:10

Re: Fehler bei SQL UPDATE über ein Makro

Beitrag von geimist »

Das Komma hatte ich wirklich noch nicht entdeckt.
Es war aber leider nicht der entscheidende Fehler.

Ich habe nochmal eine einfachste "TestTabelle" erstellt.
Auch im SQL-Code habe ich alle Variablen zum Test durch Beispieltext ersetzt:

Code: Alles auswählen

sSQL = "UPDATE "+CHR(34)+"TestTabelle"+CHR(34)+" SET ""Wert""  = ""Ergaenzung""  WHERE ""Spalte"" = ""Testeintrag"""
Die Fehlermeldung bleibt aber erhalten:
Dateianhänge
Screen034.jpg
Screen034.jpg (17.1 KiB) 513 mal betrachtet
Screen035.jpg
Screen035.jpg (11.2 KiB) 512 mal betrachtet
Gruß
Stephan

LibreOffice 5.3 - MAC OS/X 10.11
gigabert
*****
Beiträge: 203
Registriert: Di, 11.08.2009 16:06

Re: Fehler bei SQL UPDATE über ein Makro

Beitrag von gigabert »

Hmm, seltsam. Hat die Tabelle denn vorher schonmal funktioniert, also konntest du Daten eingeben oder auslesen, oder ist das eine komplett neue Tabelle?
OpenOffice 3.1.1 unter Debian 5.0 und mit PostgreSQL 8.3
geimist
****
Beiträge: 191
Registriert: Fr, 15.02.2008 16:10

Re: Fehler bei SQL UPDATE über ein Makro

Beitrag von geimist »

Entschuldigung, aber ich bin ein GANZ GROSSER TROTTEL! :lol:

Vorsichtshalber habe ich mit einer Kopie meiner DB gearbeitet, mit dem Makro aber auf die registrierte DB zugegriffen. Das kann ja nicht gehen.
Allerdings musste ich auch noch den String so korrigieren, dass die einzutragenden Werte in einfachen Hochkommas stehen, aber Spaltennamen in doppelten:

Code: Alles auswählen

SQL = "UPDATE "+CHR(34)+oVersTabelle+CHR(34)+" SET "+CHR(34)+ "DZK-Punkt 5 Ende"+CHR(34)+"  = '"+tDZK1+"'  WHERE ""Datum"" = '"+dDate+"'"
Vielen Dank für die Mühe
Gruß
Stephan

LibreOffice 5.3 - MAC OS/X 10.11
Antworten