2016-05-06 8 views
-1

Ich möchte Daten in 3 Tabellen aktualisieren, aber ich weiß nicht, wie Update-Anweisung in Kombination von select + join zu verwenden. Bitte lassen Sie mich wissen, wenn etwas nicht stimmt. Ich bin in der Erziehungsphase. DankWie SQL-Update mit 3 Tabellen durchzuführen

Hier ist die ER-Diagramm http://cramster-image.s3.amazonaws.com/definitions/9780071787536-f0281-01.jpg und ich möchte lässt einige Informationen über den Client (Kunde) sollten diese

update client 
    join address on (client.address.id_address=address.id_address and client.id_client = 1) 
    join country on address.country_id_country= country_id_country 
set 
client.id_client = 100, 
client.name = 'Puma', 
address.street = 'Oxford Street', 
address.city = 'London', 
country.name = 'England' 

Für Oracle

update client 
    set 
    client.id_client = 100, client.name = 'Puma', address.street = 'Oxford Street', 
    address.city = 'London', country.name = 'England' 
    where client.id_client=1 
    (select client.id_client,client.name, address.street, address.city, country.name 
    from client 
    join address on client.address.id_address=address.id_address 
    join country on address.country_id_country= country_id_country); 
+0

Zuerst lernen Grundlagen. Das ist eine völlig falsche Aussage. –

+0

Für welche Datenbank und Version ist das? –

+2

Etwas stimmt nicht ... Ich kann nicht einmal herausfinden, was Sie versuchen zu tun. Fügen Sie Beispieltabellendaten vor und nach dem Update hinzu. Auch tag dbms verwendet, die Antwort kann produktspezifisch sein. – jarlh

Antwort

1

Für Mysql sagen aktualisieren sollten Sie verwenden eine gespeicherte Prozedur und separate Aktualisierung für einzelne Tabelle durchführen.

+0

Wenn ich das benutze, bekomme ich 00971. 00000 - "fehlendes SET-Schlüsselwort" –

+0

welche db benutzen Sie? – scaisEdge

+0

Oracle 11.2 .... –