mysql 由in引起的 [Err] 2013 - Lost connection to MySQL server during query 的解决

原语句如下:

update qrcode_single set time_lose = now(),operator_id = '209150004' 

where (qrcode_id in (select small_id from qrcode_related_box 

where (big_id in (select small_id from qrcode_related_batter 

where big_id='/p/0101O8rQgTlZVWKdNx-5xUYb*w'))));

语句中连接了三张表,两个in,严重影响查询效率,并且还会引起如上错误。。。

后面想起有更好的办法,就是去掉in改为

update qrcode_single as qrs,qrcode_related_box as qrrb, qrcode_related_batter as qrb set qrs.time_lose = now(),qrs.operator_id = '209150004'  

where qrs.qrcode_id = qrrb.small_id and qrrb.big_id = qrb.small_id and qrb.big_id = ‘/p/0101O8rQgTlZVWKdNx-5xUYb*w';

问题解决。。。


网上还有说要改my.ini:

修改my.ini

max_allowed_packet = 500M

好了

 

教你们如何找到系统当中的my.ini文件

开始 运行  services.msc  出现服务 找到mysql 点属性  有一个可执行文件的路径,一直往后找,一定会出现my.ini这文件的具体地址

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值