对两个关系表执行 UPDATE

Perform UPDATE on two relational tables

我有一个带有自动生成 ID 列的地址 table,这个 ID 在客户 table 中被引用,我无法使用下面的代码执行更新操作

 UPDATE mydb.adrs
            SET adrs_col1 = _adrs_col1, 
                adrs_col2 = _adrs_col2
            FROM mydb.adrs AS ad
            JOIN mydb.customer AS cu  
            ON ad.adrs_id = cu.adrs_adrs_id
            WHERE customer_id = _customer_id;

_customer_id 是客户传入的 ID _adrs_col1 是传入的地址 _adrs_col2也是传入的地址(这是第二个地址)

在 MySQL 中,您应该使用此语法对传入的客户 ID 进行连接更新,因为该 ID 已经存在,因此证明更新操作是合理的

UPDATE mydb.adrs ad 
JOIN mydb.customer AS cu  
ON ad.adrs_id = cu.adrs_adrs_id
SET adrs_col1 = _adrs_col1, 
    adrs_col2 = _adrs_col2
WHERE customer_id = _customer_id;