RELEASE_LOCK
语法:
RELEASE_LOCK(name_expr)
功能:通过锁名释放会话先前使用GET_LOCK()函数上的锁。
RELEASE_LOCK()的返回值如下:
1: 成功获取所指定的锁。
NULL: 当前会话并不占有所指定的锁。
示例:
对表中的某一列加锁后解锁。
--删除表employee。
DROP TABLE IF EXISTS employee;
--创建表employee。
CREATE TABLE employee(staff_id INT NOT NULL, first_name VARCHAR(64));
--插入数据。
INSERT INTO employee(staff_id,first_name) values ('1', 'Alice');
INSERT INTO employee(staff_id,first_name) values ('2', 'Jack');
INSERT INTO employee(staff_id,first_name) values ('3', 'Brown');
--提交事务。
COMMIT;
--对'staff_id'列加锁。
SELECT GET_LOCK('staff_id',5);
GET_LOCK('STAFF_ID',5)
----------------------
1
1 rows fetched.
--对''staff_id'列解锁。
SELECT RELEASE_LOCK('staff_id');
RELEASE_LOCK('STAFF_ID')
----------------------
1
1 rows fetched.