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

MySQL数据库

开发平台:

Visual C++

  1. #
  2. # Test of update and delete with limit
  3. #
  4. --disable_warnings
  5. drop table if exists t1;
  6. --enable_warnings
  7. create table t1 (a int primary key, b int not null);
  8. insert into t1 () values (); -- Testing default values
  9. insert into t1 values (1,1),(2,1),(3,1);
  10. update t1 set a=4 where b=1 limit 1;
  11. select * from t1;
  12. update t1 set b=2 where b=1 limit 2;
  13. select * from t1;
  14. update t1 set b=4 where b=1;
  15. select * from t1;
  16. delete from t1 where b=2 limit 1;
  17. select * from t1;
  18. delete from t1 limit 1;
  19. select * from t1;
  20. drop table t1;
  21. create table t1 (i int);
  22. insert into t1 (i) values(1),(1),(1);
  23. delete from t1 limit 1;
  24. update t1 set i=2 limit 1;
  25. delete from t1 limit 0;
  26. update t1 set i=3 limit 0;
  27. select * from t1;
  28. drop table t1;
  29. # LIMIT 0
  30. select 0 limit 0;
  31. #
  32. # Test with DELETE, ORDER BY and limit (bug #1024)
  33. #
  34. CREATE TABLE t1(id int auto_increment primary key, id2 int, index(id2)); 
  35. INSERT INTO t1 (id2) values (0),(0),(0);
  36. DELETE FROM t1 WHERE id=1;
  37. INSERT INTO t1 SET id2=0;
  38. SELECT * FROM t1; 
  39. DELETE FROM t1 WHERE id2 = 0 ORDER BY id LIMIT 1; 
  40. # should have deleted WHERE id=2 
  41. SELECT * FROM t1; 
  42. DELETE FROM t1 WHERE id2 = 0 ORDER BY id desc LIMIT 1; 
  43. SELECT * FROM t1;
  44. DROP TABLE t1;
  45. #
  46. # Bug#8023 - limit on UNION with from DUAL, causes syntax error
  47. #
  48. create table t1 (a integer);
  49. insert into t1 values (1);
  50. # both queries must return one row
  51. select 1 as a from t1 union all select 1 from dual limit 1;
  52. (select 1 as a from t1) union all (select 1 from dual) limit 1;
  53. drop table t1;
  54. # End of 4.1 tests