Frage

Warum ist, dass ich einen Syntaxfehler auf der folgenden SQL-Anweisung unter SQLite bin immer?

Fehler lautet:

  

SQL-Fehler: in der Nähe von "SET": Syntaxfehler

UPDATE nova
       SET Nome = (select Nome from assessores where nova.ID = assessores.ID),
       SET Morada = (select Morada from assessores where nova.ID = assessores.ID),
       SET Email = (select Email from assessores where nova.ID = assessores.ID),
       SET TelfCasa = (select TelfCasa from assessores where nova.ID = assessores.ID),
       SET TelfEmprego = (select TelfEmprego from assessores where nova.ID = assessores.ID),
       SET Telemovel = (select Telemovel from assessores where nova.ID = assessores.ID),
       SET Fax = (select Fax from assessores where nova.ID = assessores.ID)
WHERE EXISTS (select * from assessores where nova.ID = assessores.ID);

Wenn ich versuche, den vollen Genuss der SET-Feldnamen zu qualifizieren, wird der Fehler:

  

SQL-Fehler: in der Nähe "": Syntaxfehler

War es hilfreich?

Lösung

Sie benötigen nur eine SET am Anfang. Sie können auch die Abfrage vereinfachen, indem sie die beiden Tabellen miteinander zu verbinden und die Beseitigung der Unterabfragen.

UPDATE nova JOIN assessores ON nova.ID = assessores.ID
SET nova.Nome        = assessores.Nome,
    nova.Morada      = assessores.Morada,
    nova.Email       = assessores.Email,
    nova.TelfCasa    = assessores.TelfCasa,
    nova.TelfEmprego = assessores.TelfEmprego,
    nova.Telemovel   = assessores.Telemovel,
    nova.Fax         = assessores.Fax;
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top