lock.result
上传用户:romrleung
上传日期:2022-05-23
资源大小:18897k
文件大小:2k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. drop table if exists t1,t2;
  2. CREATE TABLE t1 (  `id` int(11) NOT NULL default '0', `id2` int(11) NOT NULL default '0', `id3` int(11) NOT NULL default '0', `dummy1` char(30) default NULL, PRIMARY KEY  (`id`,`id2`), KEY `index_id3` (`id3`)) ENGINE=MyISAM;
  3. insert into t1 (id,id2) values (1,1),(1,2),(1,3);
  4. LOCK TABLE t1 WRITE;
  5. select dummy1,count(distinct id) from t1 group by dummy1;
  6. dummy1 count(distinct id)
  7. NULL 1
  8. update t1 set id=-1 where id=1;
  9. LOCK TABLE t1 READ;
  10. update t1 set id=1 where id=1;
  11. ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
  12. create table t2 SELECT * from t1;
  13. ERROR HY000: Table 't2' was not locked with LOCK TABLES
  14. create temporary table t2 SELECT * from t1;
  15. drop table if exists t2;
  16. unlock tables;
  17. create table t2 SELECT * from t1;
  18. LOCK TABLE t1 WRITE,t2 write;
  19. insert into t2 SELECT * from t1;
  20. update t1 set id=1 where id=-1;
  21. drop table t1,t2;
  22. CREATE TABLE t1 (
  23. index1 smallint(6) default NULL,
  24. nr smallint(6) default NULL,
  25. KEY index1(index1)
  26. ) ENGINE=MyISAM;
  27. CREATE TABLE t2 (
  28. nr smallint(6) default NULL,
  29. name varchar(20) default NULL
  30. ) ENGINE=MyISAM;
  31. INSERT INTO t2 VALUES (1,'item1');
  32. INSERT INTO t2 VALUES (2,'item2');
  33. lock tables t1 write, t2 read;
  34. insert into t1 select 1,nr from t2 where name='item1';
  35. insert into t1 select 2,nr from t2 where name='item2';
  36. unlock tables;
  37. check table t1;
  38. Table Op Msg_type Msg_text
  39. test.t1 check status OK
  40. lock tables t1 write;
  41. check table t2;
  42. Table Op Msg_type Msg_text
  43. test.t2 check error Table 't2' was not locked with LOCK TABLES
  44. insert into t1 select nr from t1;
  45. ERROR HY000: Table 't1' was not locked with LOCK TABLES
  46. unlock tables;
  47. lock tables t1 write, t1 as t1_alias read;
  48. insert into t1 select index1,nr from t1 as t1_alias;
  49. drop table t1,t2;
  50. create table t1 ( a int(11) not null auto_increment, primary key(a));
  51. create table t2 ( a int(11) not null auto_increment, primary key(a));
  52. lock tables t1 write, t2 read;
  53. delete from t1 using t1,t2 where t1.a=t2.a;
  54. delete t1 from t1,t2 where t1.a=t2.a;
  55. delete from t2 using t1,t2 where t1.a=t2.a;
  56. ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
  57. delete t2 from t1,t2 where t1.a=t2.a;
  58. ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
  59. drop table t1,t2;