Chinaunix首页 | 论坛 | 博客
  • 博客访问: 433412
  • 博文数量: 403
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: -70
  • 用 户 组: 普通用户
  • 注册时间: 2016-09-05 12:45
文章分类

全部博文(403)

文章存档

2014年(3)

2013年(1)

2012年(3)

2011年(21)

2010年(13)

2009年(64)

2008年(9)

2007年(36)

2006年(253)

分类: Mysql/postgreSQL

2006-09-18 09:39:04

查找缩表概念的时候搜到的
 
 
上周写程序时碰到一个问题,为了让数据保持一致性,就在读写数据前锁表,用PHP来处理的,没想到引发了新问题。锁完表之后,由于还需要用到其它数据表,然而,这时就有问题了,报错大致如下:ERROR 1100 (HY000): Table 'table1' was not locked with LOCK TABLES; 我调用的是PEAR::DB类,跟踪PHP程序老半天还是不得其解,就在脑子快想破了的时候,突然灵光一闪,于是就打开手册,开始找关于锁表的片段,终于找到了,原文片段如下:
When you use LOCK TABLES, you must lock all tables that you are going to use and you must use the same alias that you are going to use in your queries! If you are using a table multiple times in a query (with aliases), you must get a lock for each alias!
大致意思是,在锁某个表之后,该进程如果需要用到其它表,也必须锁定该表;这个问题是以前一直都没注意到的,用的也少,看手册也不够细心啊。。。
阅读(1807) | 评论(0) | 转发(0) |
0

上一篇:mysql的FAQ

下一篇:MYSQL的字符集

给主人留下些什么吧!~~