mariadb/mysql-test/r/innodb-lock.result

58 lines
994 B
Text
Raw Normal View History

set global innodb_table_locks=1;
select @@innodb_table_locks;
@@innodb_table_locks
2004-10-20 15:04:28 +02:00
1
drop table if exists t1;
set @@innodb_table_locks=1;
create table t1 (id integer, x integer) engine=INNODB;
insert into t1 values(0, 0);
set autocommit=0;
SELECT * from t1 where id = 0 FOR UPDATE;
id x
0 0
set autocommit=0;
lock table t1 write;
update t1 set x=1 where id = 0;
select * from t1;
id x
0 1
commit;
update t1 set x=2 where id = 0;
commit;
unlock tables;
select * from t1;
id x
0 2
commit;
drop table t1;
set @@innodb_table_locks=0;
2004-10-20 15:04:28 +02:00
create table t1 (id integer primary key, x integer) engine=INNODB;
insert into t1 values(0, 0),(1,1),(2,2);
commit;
SELECT * from t1 where id = 0 FOR UPDATE;
id x
0 0
set autocommit=0;
2004-10-20 15:04:28 +02:00
set @@innodb_table_locks=0;
lock table t1 write;
2004-10-20 15:04:28 +02:00
update t1 set x=10 where id = 2;
SELECT * from t1 where id = 2;
id x
2004-10-20 15:04:28 +02:00
2 2
UPDATE t1 set x=3 where id = 2;
commit;
2004-10-20 15:04:28 +02:00
SELECT * from t1;
id x
0 0
1 1
2 3
commit;
unlock tables;
2004-10-20 15:04:28 +02:00
commit;
select * from t1;
id x
2004-10-20 15:04:28 +02:00
0 0
1 1
2 10
drop table t1;