Server IP : 185.86.78.101 / Your IP : 216.73.216.213 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/server/mysql/mysql-test/r/ |
Upload File : |
# Establish connection con1 (user=root) # Establish connection con2 (user=root) drop table if exists t1,t2; # Switch to connection con1 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 # Switch to connection con2 set autocommit=0; update t1 set x=2 where id = 0; # Switch to connection con1 update t1 set x=1 where id = 0; select * from t1; id x 0 1 commit; # Switch to connection con2 commit; # Switch to connection con1 select * from t1; id x 0 2 commit; drop table t1; # Switch to connection con1 create table t1 (id integer, x integer) engine = InnoDB; create table t2 (b integer, a integer) engine = InnoDB; insert into t1 values(0, 0), (300, 300); insert into t2 values(0, 10), (1, 20), (2, 30); commit; set autocommit=0; select * from t2; b a 0 10 1 20 2 30 update t2 set a=100 where b=(SELECT x from t1 where id = b FOR UPDATE); select * from t2; b a 0 100 1 20 2 30 select * from t1; id x 0 0 300 300 # Switch to connection con2 set autocommit=0; update t1 set x=2 where id = 0; # Switch to connection con1 update t1 set x=1 where id = 0; select * from t1; id x 0 1 300 300 commit; # Switch to connection con2 commit; # Switch to connection con1 select * from t1; id x 0 2 300 300 commit; drop table t1, t2; create table t1 (id integer, x integer) engine = InnoDB; create table t2 (b integer, a integer) engine = InnoDB; insert into t1 values(0, 0), (300, 300); insert into t2 values(0, 0), (1, 20), (2, 30); commit; # Switch to connection con1 select a,b from t2 UNION SELECT id, x from t1 FOR UPDATE; a b 0 0 20 1 30 2 300 300 select * from t2; b a 0 0 1 20 2 30 select * from t1; id x 0 0 300 300 # Switch to connection con2 update t2 set a=2 where b = 0; select * from t2; b a 0 2 1 20 2 30 update t1 set x=2 where id = 0; # Switch to connection con1 update t1 set x=1 where id = 0; select * from t1; id x 0 1 300 300 commit; # Switch to connection con2 commit; # Switch to connection con1 select * from t1; id x 0 2 300 300 commit; # Switch to connection default + disconnect con1 and con2 drop table t1, t2; End of 4.1 tests set default_storage_engine=innodb; drop table if exists a; drop table if exists A; create table A (c int); insert into A (c) values (0); create table a as select * from A; drop table A; drop table if exists a; set default_storage_engine=default; End of 5.0 tests.