边学边用Mysql(1):锁表

当你看到这段出错信息:
ERROR 1100 : Table 'table1' was not locked with LOCK TABLES
有可能是真的锁表了,可以参见这篇文章http://imysql.cn/?q=node/21 或者查看手册来检查一下。

也有可能不是锁表了,而是这个表已经不存在了,mysql访问不到就以为是锁表了。而mysql给出的提示信息有很容易引起误解。
比如:你建了一个触发器:当A表有update操作时,同时更新B表。正常情况下没有问题。但是如果B表改名字,或者被删除,由于这个触发器仍然存在,所以当A表有update操作时,数据库会尝试更新B表,当然是失败了,但mysql这是不会给出“ERRORTable ‘B' not exist”的提示,而是提示你“Table 'B' was not locked with LOCK TABLES”。
这时如果你忘记了那个以前建的触发器,就很难找到错误的来源。我就被郁闷了一个上午。
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值