Entwickler-Ecke
Datenbanken - Kompliziertes Update Statement..
MarkusAlexander - Do 11.12.03 13:34
Titel: Kompliziertes Update Statement..
Ich habe große Probleme mit meinem Update Statement.
Dies soll 2 Tabellen berücksichtigen.
-Vertrag
- Auto
beide Tabellen enthalten das Feld Kennzeichen über das ich verknüpfen will.
Ich möchte in der Tabelle Auto die Entity "verfügbar" auf 1 setzen.
Ich kenne aber nur den Primärschlüsselwert "Mietnr" aus der Tabelle Vertrag..
Also so hab ich mir´s vorgstellt.. es funktioniert nur nicht:
Update auto set verfuegbar = '1' where Kennzeichen =(select Kennzeichen from vertrag where MietNr= '1');
Wer weiß schnellen Rat?!?!
CenBells - Do 11.12.03 14:07
Hallo,
was funktioniert denn daran nicht? Das SQL-Statement sieht eigentlich ganz richtig aus. Gibt es eine Fehlermeldung? Und um welche DB handelt es sich denn?
Gruß
Ken
MarkusAlexander - Do 11.12.03 14:15
es handelt sich um MYSQL.
Ich bekomme die Fehlermeldung
You have an error near select Kennzeichen..
Verträgt sich eine Unterabfrage denn mit dem Update nicht?
CenBells - Do 11.12.03 14:22
Hallo,
eine unterfrage in einem Update ist normalerweise kein Problem. Du musst aber nochmal in der MySQL doku nachlesen.
Ich meine mich daran zu erinnern, daß MySQL in versionen kleiner 4 sogenannte nested Statements nicht verarbeiten kann.
Gruß
Ken
UGrohne - Do 11.12.03 15:13
Laut neuester Entwickler-Ausgabe kann mySQL erst ab Version 4.1 SubSelects verarbeiten, wenn ich das in der kurzen Zeit nicht falsch verstanden habe
Andi1982 - Do 11.12.03 15:38
Da würd ich mir garnicht gross den Kopf darüber zerbrechen, in DB2 wärs ja ganz einfach, aber in deinem fall würde ich das kennzeichen anhand der MietNr in eine Hostvariable selectieren und dann das update ausführen.
Also in zwei SQLs verteilen....
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!