使用MySql中的存储过程更新2个表

时间:2012-02-10 16:27:02

标签: asp.net mysql stored-procedures insert-update

这似乎是一个简单的请求。但我的查询不工作,我在互联网上找到相互矛盾的答案。是否可以使用存储过程在MySql中连接2个表来进行UPDATE和INSERT?

我有一个Asp.net Webforms网站。它有2个表个人和地址。个人表包含个人数据,即电话号码,传真,电子邮件等。 地址表包含个人的所有地址信息。它们每个表都有一列Individual ID自动递增。 (注意:Address表中的individualID不是主键,但单个表中的individualID是主键。

无论如何,我在Asp.net中有一个FormView,它带有一个SELECT语句,可以连接这两个表并显示数据。但是更新两个表的新信息仍然失败。

我最近的错误是:'PRIMARY'键重复输入'0'

有没有办法写一个连接2个表的UPDATE语句?这必须存在吗?

1 个答案:

答案 0 :(得分:1)

可以使用单个查询更新多个表 -

UPDATE table1
INNER JOIN table2
  ON table1.id = table2.table1_id
SET table1.col1 = 'some value', table2.col1 = 'Another value'
WHERE <some where clause>;