当我想执行此sql update语句时,出现语法错误,但是看不到任何语法错误。

UPDATE database1
SET database1.Name = 'Hans', database1.Grund = 'Defekt', database1.Gerätename = 'Beamer', database1.Ausleihdatum = '15/3/2019', database1.Rückgabedatum = '29/3/2019', database1.Gerät_ID = database_geräte.ID
FROM database1
    INNER JOIN database_geräte ON database1.ID = database_geräte.ID
WHERE database1.Name = 'Peter' AND database1.Grund = 'Altes Gerät defekt' AND database1.Gerätename = 'Beamer' AND database1.Ausleihdatum = '21/3/2019' AND database1.Rückgabedatum = '10/4/2019'


更新语句应该可以工作,但是我不知道为什么...

最佳答案

问题是您正在使用SQL Server语法进行MySQL更新查询。在MySQL中,连接首先出现,然后是SET

UPDATE database1 t1
INNER JOIN database_geräte t2
    ON t1.ID = t2.ID
SET
    t1.Name = 'Hans',
    t1.Grund = 'Defekt',
    t1.Gerätename = 'Beamer',
    t1.Ausleihdatum = '15/3/2019',
    t1.Rückgabedatum = '29/3/2019',
    t1.Gerät_ID = t2.ID;

10-02 23:16