两张表关联修改数据错误sql
两张表关联修改数据时,若是被修改字段是由某个表中原来数据运算后数据,那么两张表关联的字段,必须有个是惟一的。it
若是两张表关联的字段都不惟一,会致使数据混乱。date
好比三张表,order orderitem orderoperatesql语句
order与orderitem,order与orderoperate都是一对多的关系。数据
分别有以下字段:ant
order: idjoin
orderitem:id orderId quantity错误
orderoperate:id orderId orderItemId quantityopera
若是是下面的sql语句:
sql=update orderitem t left join orderoperate t1 on t.orderId=t1.orderId
set t.quantity=t.quantity+t1.quantity
数据就会出现混乱;
关联关系改成t.id=t1.orderItemId就能够了。