语法 :
LOCK TABLE 表名1 READ|WRITE, 表名2 READ|WRITE .................. 【锁表】
UNLOCK TABLES 【释放表】
Read:读锁|共享锁 : 所有的客户端只能读这个表不能写这个表
Write:写锁|排它锁: 所有当前锁定客户端可以 *** 作这个表,其他客户端只能阻塞
注意:在锁表的过程中只能 *** 作被锁定的表,如果要 *** 作其他表,必须把所有要 *** 作的表都锁定起来!
PHP中的文件锁 (锁的是文件,不是表)
文件锁的文件与表有什么关系?:一点关系也没有,与令牌相似,谁拿到谁 *** 作。所以表根本没锁。
测试时,有个文件就行,叫什么名无所谓
第一步,创建数据库表writer和查看表结构,利用SQL语句:create table writer(
wid int(10),
wno int(10),
wname varchar(20),
wsex varchar(2),
wage int(2)
第二步,向数据库表writer插入五条数据,插入后查看表里数据
第三步,利用锁定语句锁定数据库表writer,利用SQL语句:
lock table writer read
让数据库表只读不能进行写
第四步,为了验证锁定效果,可以查看数据库表数据,利用SQL语句:
select * from writer
第五步,利用update语句对id=5进行更新,SQL语句为:
update writer set wname = '胡思思' where id = 5
第六步,利用unlock进行解锁,SQL语句为:
unlock tables
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)