Seite 1 von 1
REPLACE in UPDATE
Verfasst: Di 25. Aug 2015, 10:48
von andiair
Hallo,
ich versuche gerade einen REPLACE in einem UPDATE auszuführen, bekomme aber folgende Meldung im Status
"1: Undefinierte Funktion 'REPLACE' in Ausdruck."
Hier ist mein verwendeter Code
Code: Alles auswählen
UPDATE tblPart
SET externalDocument1=REPLACE(externalDocument1,'Documents','Datenblätter')
WHERE (externalDocument1 IS NOT NULL AND externalDocument1 LIKE 'Documents');
Vielelicht kann mir dort ja jemand weiterhelfen
Schonmal Dank für eure Mühen.
Andi
Re: REPLACE in UPDATE
Verfasst: Di 25. Aug 2015, 12:17
von andiair
Danke für die superschnelle Reaktion
Das mit dem % in dem WHERE habe ich in meiner Formel hier, ich wollte nur nicht den kompletten Laufwekspfad hier posten und habe das zuviel gelöscht.
Ich möchte in den Inhalten der Spalte
externalDocument1
den Text
'$(MD_DOCUMENTS)\Datenblätter\'
durch
'P:\EPLAN_Stammdaten_System\Dokumente\EPL\Datenblätter\'
ersetzen
Mit
SET externalDocument1 = 'Documents, Datenblätter'
schreibe ich ja fest 'Documents, Datenblätter' rein.
Hier meine Original Formel, die nicht funktioniert
Code: Alles auswählen
UPDATE tblPart
SET externalDocument1=(REPLACE(externalDocument1,'$(MD_DOCUMENTS)\Datenblätter\','P:\EPLAN_Stammdaten_System\Dokumente\EPL\Datenblätter\'))
WHERE (externalDocument1 IS NOT NULL AND externalDocument1 LIKE '$(MD_DOCUMENTS)\Datenblätter\%');
Re: REPLACE in UPDATE
Verfasst: Di 25. Aug 2015, 13:25
von andiair
Hallo,
hier man Problem Beispüielhaft dargestellt. Ich muss den Pfad absolut für einen Link auf ein Datenblatt angeben.
In der Spalte externalDocument1 stehen z.B. folgende Werte
$(MD_DOCUMENTS)\Datenblätter\JAN\JAN.UMG96x_de.pdf
$(MD_DOCUMENTS)\Datenblätter\ABT\ABT.ZPx12x_de.pdf
$(MD_DOCUMENTS)\Datenblätter\ASK\ASK.BD100_125AL_de.pdf
...
Das sollte zu
P:\EPLAN_Stammdaten_System\Dokumente\EPL\Datenblätter\JAN\JAN.UMG96x_de.pdf
P:\EPLAN_Stammdaten_System\Dokumente\EPL\Datenblätter\ABT\ABT.ZPx12x_de.pdf
P:\EPLAN_Stammdaten_System\Dokumente\EPL\Datenblätter\ASK\ASK.BD100_125AL_de.pdf
werden.
eben suche nach
$(MD_DOCUMENTS)\Datenblätter\
ersetze durch
P:\EPLAN_Stammdaten_System\Dokumente\EPL\Datenblätter\
Ich hoffe so ist es verständlicher.
Danke
Andi
Re: REPLACE in UPDATE
Verfasst: Di 25. Aug 2015, 16:42
von andiair
Hi nikki,
danke für deine Antwort und deine Bemühungen, aber meine Frage als "schlecht" zu bezeichnen finde ich nicht ganz treffend.
Ich hatte klar ein REPLACE in meiner SQL-Anweisung.
Grüße
Andi
Re: REPLACE in UPDATE
Verfasst: Di 25. Aug 2015, 16:50
von F3K Total
Hi, habe gerade dieses SQL-Statement erfolgreich durchgeführt:
Code: Alles auswählen
update "Adressen" set "Adresse" = Replace("Adresse",'P.O.','XXX')
Tabellen und Spaltennamen mit Kleinbuchstaben immer in doppelte Anführungszeichen, zumindest für die eingebettete HSQL Datenbank.
Dein Ausdruck wäre also
Code: Alles auswählen
UPDATE "tblPart"
SET "externalDocument1"=REPLACE("externalDocument1",'Documents','Datenblätter')
Die Where Klausel kann wirklich weggelassen werden
Wenn Du eine andere Datenbank als die HSQL DB verwendest, musst du natürlich schauen, ob sie REPLACE beherrscht und wenn, wie die Syntax genau ist.
Gruß R