update-query über zwei tabellen

update-query über zwei tabellen

am 19.04.2006 17:11:28 von alexander kainz

könnt ihr mir mal bei folgendem query helfen:

tabelle ARTIKEL feld PRICE_UPDATED soll mit dem wert aus
tabelle ARTIKEL_PREIS feld GEAEND beschrieben werden,
wenn ARTIKEL_PREIS.ARTIKEL_ID = ARTIKEL.REC_ID


ich habe das mit
UPDATE SET ARTIKEL.PRICE_UPDATED = ARTIKEL_PREIS.GEAEND
where
ARTIKEL_PREIS.ARTIKEL_ID = ARTIKEL.REC_ID

und erhalte eine fehlermeldung #1064 Error in sql-staement :-(


greets
-/--\-
alex

Re: update-query über zwei tabellen

am 19.04.2006 17:38:37 von Christian Kirsch

alexander kainz schrieb:
> könnt ihr mir mal bei folgendem query helfen:
>
> tabelle ARTIKEL feld PRICE_UPDATED soll mit dem wert aus
> tabelle ARTIKEL_PREIS feld GEAEND beschrieben werden,
> wenn ARTIKEL_PREIS.ARTIKEL_ID = ARTIKEL.REC_ID
>
>
> ich habe das mit
> UPDATE SET ARTIKEL.PRICE_UPDATED = ARTIKEL_PREIS.GEAEND
> where
> ARTIKEL_PREIS.ARTIKEL_ID = ARTIKEL.REC_ID
>
> und erhalte eine fehlermeldung #1064 Error in sql-staement :-(
>
>
Hatten wir das nicht erst vor zwei Tagen hier?

Bitte lies die Dokumentation zu MySQL unter dev.mysql.com/doc und
beachtet vor allem die Hinweise auf die VERSION, mit der dieses
Statement funktioniert

(Wobei es in Deinem Fall gar keine MySQL-Version geben dürfte, die
dieses UPDATE ausführt -> bitte lies die Syntax nach).

Re: update-query überzwei tabellen

am 19.04.2006 17:45:11 von Thomas Rachel

alexander kainz wrote:

> könnt ihr mir mal bei folgendem query helfen:

Deine Umlaute sind falsch deklariert (bzw. gar nicht)


> tabelle ARTIKEL feld PRICE_UPDATED soll mit dem wert aus
> tabelle ARTIKEL_PREIS feld GEAEND beschrieben werden,
> wenn ARTIKEL_PREIS.ARTIKEL_ID = ARTIKEL.REC_ID
>
>
> ich habe das mit
> UPDATE SET ARTIKEL.PRICE_UPDATED = ARTIKEL_PREIS.GEAEND
> where
> ARTIKEL_PREIS.ARTIKEL_ID = ARTIKEL.REC_ID
>
> und erhalte eine fehlermeldung #1064 Error in sql-staement :-(

Da fehlt noch was zwischen UPDATE und SET, damit MySQL weiß, welche Tabellen
er für dieses Statement geöffnet werden sollen.

Bei der Gelegenkeit kannst Du dann auch direkt schön joinen:

UPDATE ARTIKEL JOIN ARTIKEL_PREIS ON ARTIKEL_PREIS.ARTIKEL_ID =
ARTIKEL.REC_ID SET ARTIKEL.PRICE_UPDATED = ARTIKEL_PREIS.GEAEND

HTH,


Thomas