首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Inner的SQL更新查询给出的锁定等待超时

使用Inner的SQL更新查询给出的锁定等待超时
EN

Stack Overflow用户
提问于 2013-12-06 17:31:42
回答 2查看 1K关注 0票数 3

我有以下查询,它在两个表上运行,每个表有超过80,000和40,000条记录:

代码语言:javascript
复制
update 
profileimageurls piu 
inner join 
profileuniqref pr
on piu.imageurl = pr.uniqueimageurl
set piu.uniqueimagekey = pr.keyid;

profileimageurls表结构:

代码语言:javascript
复制
 Field              Type                  Null
 KeyID              bigint(20) unsigned   NO
 UserID             bigint(20) unsigned   NO
 ImageURL           varchar(4000)         NO
 UniqueImageURL     varchar(4000)         YES
 Error              varchar(10000)        YES
 Status             tinyint(3) unsigned   YES
 uniqueImageKeyid   bigint(20) unsigned   YES

profileuniqref的表结构:

代码语言:javascript
复制
 Field          Type
 KeyId          bigint(20) unsigned
 uniqueimageurl varchar(4000)
 md5hash        varchar(32)
 md5hashbinary  varchar(16)

当我运行这个查询时,我反复得到Lock and Wait timeout。

EN

回答 2

Stack Overflow用户

发布于 2013-12-06 17:37:22

确保在join条件中使用的列上有索引。

票数 2
EN

Stack Overflow用户

发布于 2013-12-06 17:38:22

如果您在连接表之间有外键,并且您正在更新键,这可能会导致mysql更新这两个表之间的键数据。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20420403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档