mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Merge bk-internal:/home/bk/mysql-4.1-maint
into pilot.blaudden:/home/msvensson/mysql/mysql-4.1-maint
This commit is contained in:
@ -803,3 +803,8 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
|
||||
alter table table_24562 order by no_such_col;
|
||||
ERROR 42S22: Unknown column 'no_such_col' in 'order clause'
|
||||
drop table table_24562;
|
||||
CREATE TABLE t1 (c1 CHAR(255));
|
||||
INSERT INTO t1 VALUES (REPEAT("x", 255)), (REPEAT("x", 255));
|
||||
ALTER TABLE t1 ADD UNIQUE (c1);
|
||||
ERROR 23000: Duplicate entry 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' for key 1
|
||||
DROP TABLE t1;
|
||||
|
@ -447,3 +447,10 @@ a MATCH(a) AGAINST('test1 test')
|
||||
test1 0.68526661396027
|
||||
DEALLOCATE PREPARE stmt;
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (a VARCHAR(255), FULLTEXT(a));
|
||||
SELECT * FROM t1 IGNORE INDEX(a) WHERE MATCH(a) AGAINST('test');
|
||||
a
|
||||
ALTER TABLE t1 DISABLE KEYS;
|
||||
SELECT * FROM t1 WHERE MATCH(a) AGAINST('test');
|
||||
ERROR HY000: Can't find FULLTEXT index matching the column list
|
||||
DROP TABLE t1;
|
||||
|
@ -492,3 +492,14 @@ delete from mysql.db where user='mysqltest1';
|
||||
delete from mysql.tables_priv where user='mysqltest1';
|
||||
flush privileges;
|
||||
drop database mysqltest;
|
||||
create database db27515;
|
||||
use db27515;
|
||||
create table t1 (a int);
|
||||
grant alter on db27515.t1 to user27515@localhost;
|
||||
grant insert, create on db27515.t2 to user27515@localhost;
|
||||
rename table t1 to t2;
|
||||
ERROR 42000: DROP command denied to user 'user27515'@'localhost' for table 't1'
|
||||
revoke all privileges, grant option from user27515@localhost;
|
||||
drop user user27515@localhost;
|
||||
drop database db27515;
|
||||
End of 4.1 tests
|
||||
|
@ -294,7 +294,7 @@ drop table t1;
|
||||
create table t1 (c char(255), primary key(c(90)));
|
||||
insert into t1 values ("abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz");
|
||||
insert into t1 values ("abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz");
|
||||
ERROR 23000: Duplicate entry 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijkl' for key 1
|
||||
ERROR 23000: Duplicate entry 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijkl' for key 1
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (a int, key(a)) engine=heap;
|
||||
insert into t1 values (0);
|
||||
|
@ -1,47 +1,47 @@
|
||||
insert into mysql.help_category(help_category_id,name)values(1,'impossible_category_1');
|
||||
select @category1_id:= 1;
|
||||
@category1_id:= 1
|
||||
1
|
||||
insert into mysql.help_category(help_category_id,name)values(2,'impossible_category_2');
|
||||
select @category2_id:= 2;
|
||||
@category2_id:= 2
|
||||
2
|
||||
insert into mysql.help_category(help_category_id,name,parent_category_id)values(3,'impossible_category_3',@category2_id);
|
||||
select @category3_id:= 3;
|
||||
@category3_id:= 3
|
||||
3
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(1,'impossible_function_1',@category1_id,'description of \n impossible_function1\n','example of \n impossible_function1');
|
||||
select @topic1_id:= 1;
|
||||
@topic1_id:= 1
|
||||
1
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(2,'impossible_function_2',@category1_id,'description of \n impossible_function2\n','example of \n impossible_function2');
|
||||
select @topic2_id:= 2;
|
||||
@topic2_id:= 2
|
||||
2
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(3,'impossible_function_3',@category2_id,'description of \n impossible_function3\n','example of \n impossible_function3');
|
||||
select @topic3_id:= 3;
|
||||
@topic3_id:= 3
|
||||
3
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(4,'impossible_function_4',@category2_id,'description of \n impossible_function4\n','example of \n impossible_function4');
|
||||
select @topic4_id:= 4;
|
||||
@topic4_id:= 4
|
||||
4
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(5,'impossible_function_7',@category3_id,'description of \n impossible_function5\n','example of \n impossible_function7');
|
||||
select @topic5_id:= 5;
|
||||
@topic5_id:= 5
|
||||
5
|
||||
insert into mysql.help_keyword(help_keyword_id,name)values(1,'impossible_function_1');
|
||||
select @keyword1_id:= 1;
|
||||
@keyword1_id:= 1
|
||||
1
|
||||
insert into mysql.help_keyword(help_keyword_id,name)values(2,'impossible_function_5');
|
||||
select @keyword2_id:= 2;
|
||||
@keyword2_id:= 2
|
||||
2
|
||||
insert into mysql.help_keyword(help_keyword_id,name)values(3,'impossible_function_6');
|
||||
select @keyword3_id:= 3;
|
||||
@keyword3_id:= 3
|
||||
3
|
||||
insert into mysql.help_category(help_category_id,name)values(10001,'impossible_category_1');
|
||||
select @category1_id:= 10001;
|
||||
@category1_id:= 10001
|
||||
10001
|
||||
insert into mysql.help_category(help_category_id,name)values(10002,'impossible_category_2');
|
||||
select @category2_id:= 10002;
|
||||
@category2_id:= 10002
|
||||
10002
|
||||
insert into mysql.help_category(help_category_id,name,parent_category_id)values(10003,'impossible_category_3',@category2_id);
|
||||
select @category3_id:= 10003;
|
||||
@category3_id:= 10003
|
||||
10003
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(10101,'impossible_function_1',@category1_id,'description of \n impossible_function1\n','example of \n impossible_function1');
|
||||
select @topic1_id:= 10101;
|
||||
@topic1_id:= 10101
|
||||
10101
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(10102,'impossible_function_2',@category1_id,'description of \n impossible_function2\n','example of \n impossible_function2');
|
||||
select @topic2_id:= 10102;
|
||||
@topic2_id:= 10102
|
||||
10102
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(10103,'impossible_function_3',@category2_id,'description of \n impossible_function3\n','example of \n impossible_function3');
|
||||
select @topic3_id:= 10103;
|
||||
@topic3_id:= 10103
|
||||
10103
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(10104,'impossible_function_4',@category2_id,'description of \n impossible_function4\n','example of \n impossible_function4');
|
||||
select @topic4_id:= 10104;
|
||||
@topic4_id:= 10104
|
||||
10104
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(10105,'impossible_function_7',@category3_id,'description of \n impossible_function5\n','example of \n impossible_function7');
|
||||
select @topic5_id:= 10105;
|
||||
@topic5_id:= 10105
|
||||
10105
|
||||
insert into mysql.help_keyword(help_keyword_id,name)values(10201,'impossible_function_1');
|
||||
select @keyword1_id:= 10201;
|
||||
@keyword1_id:= 10201
|
||||
10201
|
||||
insert into mysql.help_keyword(help_keyword_id,name)values(10202,'impossible_function_5');
|
||||
select @keyword2_id:= 10202;
|
||||
@keyword2_id:= 10202
|
||||
10202
|
||||
insert into mysql.help_keyword(help_keyword_id,name)values(10203,'impossible_function_6');
|
||||
select @keyword3_id:= 10203;
|
||||
@keyword3_id:= 10203
|
||||
10203
|
||||
insert into mysql.help_relation(help_keyword_id,help_topic_id)values(@keyword1_id,@topic2_id);
|
||||
insert into mysql.help_relation(help_keyword_id,help_topic_id)values(@keyword2_id,@topic1_id);
|
||||
insert into mysql.help_relation(help_keyword_id,help_topic_id)values(@keyword3_id,@topic3_id);
|
||||
|
@ -128,4 +128,37 @@ show /*!50002 GLOBAL */ status like 'Handler_rollback';
|
||||
Variable_name Value
|
||||
Handler_rollback 0
|
||||
drop table t1;
|
||||
CREATE TABLE t1(c1 TEXT, UNIQUE (c1(1)), cnt INT DEFAULT 1)
|
||||
ENGINE=INNODB CHARACTER SET UTF8;
|
||||
INSERT INTO t1 (c1) VALUES ('1a');
|
||||
SELECT * FROM t1;
|
||||
c1 cnt
|
||||
1a 1
|
||||
INSERT INTO t1 (c1) VALUES ('1b') ON DUPLICATE KEY UPDATE cnt=cnt+1;
|
||||
SELECT * FROM t1;
|
||||
c1 cnt
|
||||
1a 2
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1(c1 VARCHAR(2), UNIQUE (c1(1)), cnt INT DEFAULT 1)
|
||||
ENGINE=INNODB CHARACTER SET UTF8;
|
||||
INSERT INTO t1 (c1) VALUES ('1a');
|
||||
SELECT * FROM t1;
|
||||
c1 cnt
|
||||
1a 1
|
||||
INSERT INTO t1 (c1) VALUES ('1b') ON DUPLICATE KEY UPDATE cnt=cnt+1;
|
||||
SELECT * FROM t1;
|
||||
c1 cnt
|
||||
1a 2
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1(c1 CHAR(2), UNIQUE (c1(1)), cnt INT DEFAULT 1)
|
||||
ENGINE=INNODB CHARACTER SET UTF8;
|
||||
INSERT INTO t1 (c1) VALUES ('1a');
|
||||
SELECT * FROM t1;
|
||||
c1 cnt
|
||||
1a 1
|
||||
INSERT INTO t1 (c1) VALUES ('1b') ON DUPLICATE KEY UPDATE cnt=cnt+1;
|
||||
SELECT * FROM t1;
|
||||
c1 cnt
|
||||
1a 2
|
||||
DROP TABLE t1;
|
||||
End of 4.1 tests
|
||||
|
@ -819,3 +819,14 @@ ALTER TABLE m1 ENGINE=MERGE UNION=(t1);
|
||||
SELECT * FROM m1;
|
||||
c1 c2 c3 c4 c5 c6 c7 c8 c9
|
||||
DROP TABLE t1, m1;
|
||||
CREATE TABLE t1 (a VARCHAR(255) CHARACTER SET latin1 COLLATE latin1_german2_ci,
|
||||
b INT, INDEX(a,b));
|
||||
CREATE TABLE t2 LIKE t1;
|
||||
CREATE TABLE t3 LIKE t1;
|
||||
ALTER TABLE t3 ENGINE=MERGE UNION=(t1,t2);
|
||||
INSERT INTO t1 VALUES ('ss',1);
|
||||
INSERT INTO t2 VALUES ('ss',2),(0xDF,2);
|
||||
SELECT COUNT(*) FROM t3 WHERE a=0xDF AND b=2;
|
||||
COUNT(*)
|
||||
2
|
||||
DROP TABLE t1,t2,t3;
|
||||
|
@ -556,3 +556,64 @@ x a sum(b)
|
||||
2006-07-01 NULL 11
|
||||
NULL NULL 11
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (a int, b int);
|
||||
INSERT INTO t1
|
||||
VALUES (2,10),(3,30),(2,40),(1,10),(2,30),(1,20),(2,10);
|
||||
SELECT a, SUM(b) FROM t1 GROUP BY a WITH ROLLUP;
|
||||
a SUM(b)
|
||||
1 30
|
||||
2 90
|
||||
3 30
|
||||
NULL 150
|
||||
SELECT DISTINCT a, SUM(b) FROM t1 GROUP BY a WITH ROLLUP;
|
||||
a SUM(b)
|
||||
1 30
|
||||
2 90
|
||||
3 30
|
||||
NULL 150
|
||||
SELECT a, b, COUNT(*) FROM t1 GROUP BY a,b WITH ROLLUP;
|
||||
a b COUNT(*)
|
||||
1 10 1
|
||||
1 20 1
|
||||
1 NULL 2
|
||||
2 10 2
|
||||
2 30 1
|
||||
2 40 1
|
||||
2 NULL 4
|
||||
3 30 1
|
||||
3 NULL 1
|
||||
NULL NULL 7
|
||||
SELECT DISTINCT a, b, COUNT(*) FROM t1 GROUP BY a,b WITH ROLLUP;
|
||||
a b COUNT(*)
|
||||
1 10 1
|
||||
1 20 1
|
||||
1 NULL 2
|
||||
2 10 2
|
||||
2 30 1
|
||||
2 40 1
|
||||
2 NULL 4
|
||||
3 30 1
|
||||
3 NULL 1
|
||||
NULL NULL 7
|
||||
SELECT 'x', a, SUM(b) FROM t1 GROUP BY 1,2 WITH ROLLUP;
|
||||
x a SUM(b)
|
||||
x 1 30
|
||||
x 2 90
|
||||
x 3 30
|
||||
x NULL 150
|
||||
NULL NULL 150
|
||||
SELECT DISTINCT 'x', a, SUM(b) FROM t1 GROUP BY 1,2 WITH ROLLUP;
|
||||
x a SUM(b)
|
||||
x 1 30
|
||||
x 2 90
|
||||
x 3 30
|
||||
x NULL 150
|
||||
NULL NULL 150
|
||||
SELECT DISTINCT 'x', a, SUM(b) FROM t1 GROUP BY 1,2 WITH ROLLUP;
|
||||
x a SUM(b)
|
||||
x 1 30
|
||||
x 2 90
|
||||
x 3 30
|
||||
x NULL 150
|
||||
NULL NULL 150
|
||||
DROP TABLE t1;
|
||||
|
@ -77,7 +77,7 @@ INSERT INTO t1 VALUES
|
||||
SET myisam_repair_threads=2;
|
||||
REPAIR TABLE t1;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 repair error sort_buffer_size is to small
|
||||
test.t1 repair error myisam_sort_buffer_size is too small
|
||||
test.t1 repair warning Number of rows changed from 0 to 157
|
||||
test.t1 repair status OK
|
||||
SET myisam_repair_threads=@@global.myisam_repair_threads;
|
||||
|
@ -53,7 +53,7 @@ SELECT (1,2,3)=(1,NULL,3);
|
||||
NULL
|
||||
SELECT (1,2,3)=(1,NULL,0);
|
||||
(1,2,3)=(1,NULL,0)
|
||||
NULL
|
||||
0
|
||||
SELECT ROW(1,2,3)=ROW(1,2,3);
|
||||
ROW(1,2,3)=ROW(1,2,3)
|
||||
1
|
||||
@ -170,3 +170,118 @@ ROW(2,10) <=> ROW(3,4)
|
||||
SELECT ROW(NULL,10) <=> ROW(3,NULL);
|
||||
ROW(NULL,10) <=> ROW(3,NULL)
|
||||
0
|
||||
SELECT ROW(1,ROW(2,3)) IN (ROW(1,ROW(2,3)),ROW(1,1));
|
||||
ERROR 21000: Operand should contain 2 column(s)
|
||||
SELECT ROW(1,ROW(2,3)) IN (ROW(1,ROW(2,3)),ROW(1,1),ROW(1,ROW(2,3)));
|
||||
ERROR 21000: Operand should contain 2 column(s)
|
||||
SELECT ROW(1,ROW(2,3)) IN (ROW(1,ROW(2,3)),ROW(1,ROW(2,2,2)));
|
||||
ERROR 21000: Operand should contain 2 column(s)
|
||||
SELECT ROW(1,ROW(2,3,4)) IN (ROW(1,ROW(2,3,4)),ROW(1,ROW(2,2)));
|
||||
ERROR 21000: Operand should contain 3 column(s)
|
||||
SELECT ROW(1,ROW(2,3)) IN (ROW(1,ROW(2,3)),(SELECT 1,1));
|
||||
ERROR 21000: Operand should contain 2 column(s)
|
||||
SELECT ROW(1,ROW(2,3)) IN (ROW(1,ROW(2,3)),(SELECT 1,1),ROW(1,ROW(2,4)));
|
||||
ERROR 21000: Operand should contain 2 column(s)
|
||||
SELECT ROW(1,ROW(2,3)) IN ((SELECT 1,1),ROW(1,ROW(2,3)));
|
||||
ERROR 21000: Operand should contain 2 column(s)
|
||||
SELECT ROW(2,1) IN (ROW(21,2),ROW(ROW(1,1,3),0));
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
SELECT ROW(2,1) IN (ROW(ROW(1,1,3),0),ROW(21,2));
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
CREATE TABLE t1(a int, b int, c int);
|
||||
INSERT INTO t1 VALUES (1, 2, 3),
|
||||
(NULL, 2, 3 ), (1, NULL, 3 ), (1, 2, NULL),
|
||||
(NULL, 2, 3+1), (1, NULL, 3+1), (1, 2+1, NULL),
|
||||
(NULL, 2, 3-1), (1, NULL, 3-1), (1, 2-1, NULL);
|
||||
SELECT (1,2,3) = (1, NULL, 3);
|
||||
(1,2,3) = (1, NULL, 3)
|
||||
NULL
|
||||
SELECT (1,2,3) = (1+1, NULL, 3);
|
||||
(1,2,3) = (1+1, NULL, 3)
|
||||
0
|
||||
SELECT (1,2,3) = (1, NULL, 3+1);
|
||||
(1,2,3) = (1, NULL, 3+1)
|
||||
0
|
||||
SELECT * FROM t1 WHERE (a,b,c) = (1,2,3);
|
||||
a b c
|
||||
1 2 3
|
||||
SELECT (1,2,3) <> (1, NULL, 3);
|
||||
(1,2,3) <> (1, NULL, 3)
|
||||
NULL
|
||||
SELECT (1,2,3) <> (1+1, NULL, 3);
|
||||
(1,2,3) <> (1+1, NULL, 3)
|
||||
1
|
||||
SELECT (1,2,3) <> (1, NULL, 3+1);
|
||||
(1,2,3) <> (1, NULL, 3+1)
|
||||
1
|
||||
SELECT * FROM t1 WHERE (a,b,c) <> (1,2,3);
|
||||
a b c
|
||||
NULL 2 4
|
||||
1 NULL 4
|
||||
1 3 NULL
|
||||
NULL 2 2
|
||||
1 NULL 2
|
||||
1 1 NULL
|
||||
SELECT (1,2,3) < (NULL, 2, 3);
|
||||
(1,2,3) < (NULL, 2, 3)
|
||||
NULL
|
||||
SELECT (1,2,3) < (1, NULL, 3);
|
||||
(1,2,3) < (1, NULL, 3)
|
||||
NULL
|
||||
SELECT (1,2,3) < (1-1, NULL, 3);
|
||||
(1,2,3) < (1-1, NULL, 3)
|
||||
0
|
||||
SELECT (1,2,3) < (1+1, NULL, 3);
|
||||
(1,2,3) < (1+1, NULL, 3)
|
||||
1
|
||||
SELECT * FROM t1 WHERE (a,b,c) < (1,2,3);
|
||||
a b c
|
||||
1 1 NULL
|
||||
SELECT (1,2,3) <= (NULL, 2, 3);
|
||||
(1,2,3) <= (NULL, 2, 3)
|
||||
NULL
|
||||
SELECT (1,2,3) <= (1, NULL, 3);
|
||||
(1,2,3) <= (1, NULL, 3)
|
||||
NULL
|
||||
SELECT (1,2,3) <= (1-1, NULL, 3);
|
||||
(1,2,3) <= (1-1, NULL, 3)
|
||||
0
|
||||
SELECT (1,2,3) <= (1+1, NULL, 3);
|
||||
(1,2,3) <= (1+1, NULL, 3)
|
||||
1
|
||||
SELECT * FROM t1 WHERE (a,b,c) <= (1,2,3);
|
||||
a b c
|
||||
1 2 3
|
||||
1 1 NULL
|
||||
SELECT (1,2,3) > (NULL, 2, 3);
|
||||
(1,2,3) > (NULL, 2, 3)
|
||||
NULL
|
||||
SELECT (1,2,3) > (1, NULL, 3);
|
||||
(1,2,3) > (1, NULL, 3)
|
||||
NULL
|
||||
SELECT (1,2,3) > (1-1, NULL, 3);
|
||||
(1,2,3) > (1-1, NULL, 3)
|
||||
1
|
||||
SELECT (1,2,3) > (1+1, NULL, 3);
|
||||
(1,2,3) > (1+1, NULL, 3)
|
||||
0
|
||||
SELECT * FROM t1 WHERE (a,b,c) > (1,2,3);
|
||||
a b c
|
||||
1 3 NULL
|
||||
SELECT (1,2,3) >= (NULL, 2, 3);
|
||||
(1,2,3) >= (NULL, 2, 3)
|
||||
NULL
|
||||
SELECT (1,2,3) >= (1, NULL, 3);
|
||||
(1,2,3) >= (1, NULL, 3)
|
||||
NULL
|
||||
SELECT (1,2,3) >= (1-1, NULL, 3);
|
||||
(1,2,3) >= (1-1, NULL, 3)
|
||||
1
|
||||
SELECT (1,2,3) >= (1+1, NULL, 3);
|
||||
(1,2,3) >= (1+1, NULL, 3)
|
||||
0
|
||||
SELECT * FROM t1 WHERE (a,b,c) >= (1,2,3);
|
||||
a b c
|
||||
1 2 3
|
||||
1 3 NULL
|
||||
DROP TABLE t1;
|
||||
|
@ -913,7 +913,7 @@ select a, (select a,b,c from t1 where t1.a=t2.a) = ROW(a,2,'a'),(select c from t
|
||||
a (select a,b,c from t1 where t1.a=t2.a) = ROW(a,2,'a') (select c from t1 where a=t2.a)
|
||||
1 1 a
|
||||
2 0 b
|
||||
NULL NULL NULL
|
||||
NULL 0 NULL
|
||||
select a, (select a,b,c from t1 where t1.a=t2.a) = ROW(a,3,'b'),(select c from t1 where a=t2.a) from t2;
|
||||
a (select a,b,c from t1 where t1.a=t2.a) = ROW(a,3,'b') (select c from t1 where a=t2.a)
|
||||
1 0 a
|
||||
@ -923,7 +923,7 @@ select a, (select a,b,c from t1 where t1.a=t2.a) = ROW(a,4,'c'),(select c from t
|
||||
a (select a,b,c from t1 where t1.a=t2.a) = ROW(a,4,'c') (select c from t1 where a=t2.a)
|
||||
1 0 a
|
||||
2 0 b
|
||||
NULL NULL NULL
|
||||
NULL 0 NULL
|
||||
drop table t1,t2;
|
||||
create table t1 (a int, b real, c varchar(10));
|
||||
insert into t1 values (1, 1, 'a'), (2,2,'b'), (NULL, 2, 'b');
|
||||
|
@ -583,5 +583,16 @@ alter table table_24562 order by no_such_col;
|
||||
|
||||
drop table table_24562;
|
||||
|
||||
#
|
||||
# Bug #20710: adding unique index of column with duplicated
|
||||
# long values to reproduce error message with truncated key value.
|
||||
#
|
||||
|
||||
CREATE TABLE t1 (c1 CHAR(255));
|
||||
INSERT INTO t1 VALUES (REPEAT("x", 255)), (REPEAT("x", 255));
|
||||
--error 1062
|
||||
ALTER TABLE t1 ADD UNIQUE (c1);
|
||||
DROP TABLE t1;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
||||
|
@ -369,4 +369,14 @@ EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# BUG#25951 - ignore/use index does not work with fulltext
|
||||
#
|
||||
CREATE TABLE t1 (a VARCHAR(255), FULLTEXT(a));
|
||||
SELECT * FROM t1 IGNORE INDEX(a) WHERE MATCH(a) AGAINST('test');
|
||||
ALTER TABLE t1 DISABLE KEYS;
|
||||
--error 1191
|
||||
SELECT * FROM t1 WHERE MATCH(a) AGAINST('test');
|
||||
DROP TABLE t1;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
@ -451,4 +451,25 @@ delete from mysql.tables_priv where user='mysqltest1';
|
||||
flush privileges;
|
||||
drop database mysqltest;
|
||||
|
||||
# End of 4.1 tests
|
||||
#
|
||||
# Bug #27515: DROP previlege is not required for RENAME TABLE
|
||||
#
|
||||
connection master;
|
||||
create database db27515;
|
||||
use db27515;
|
||||
create table t1 (a int);
|
||||
grant alter on db27515.t1 to user27515@localhost;
|
||||
grant insert, create on db27515.t2 to user27515@localhost;
|
||||
|
||||
connect (conn27515, localhost, user27515, , db27515);
|
||||
connection conn27515;
|
||||
--error 1142
|
||||
rename table t1 to t2;
|
||||
disconnect conn27515;
|
||||
|
||||
connection master;
|
||||
revoke all privileges, grant option from user27515@localhost;
|
||||
drop user user27515@localhost;
|
||||
drop database db27515;
|
||||
|
||||
--echo End of 4.1 tests
|
||||
|
@ -13,30 +13,30 @@
|
||||
# impossible_category_3
|
||||
# impossible_function_7
|
||||
|
||||
insert into mysql.help_category(help_category_id,name)values(1,'impossible_category_1');
|
||||
select @category1_id:= 1;
|
||||
insert into mysql.help_category(help_category_id,name)values(2,'impossible_category_2');
|
||||
select @category2_id:= 2;
|
||||
insert into mysql.help_category(help_category_id,name,parent_category_id)values(3,'impossible_category_3',@category2_id);
|
||||
select @category3_id:= 3;
|
||||
insert into mysql.help_category(help_category_id,name)values(10001,'impossible_category_1');
|
||||
select @category1_id:= 10001;
|
||||
insert into mysql.help_category(help_category_id,name)values(10002,'impossible_category_2');
|
||||
select @category2_id:= 10002;
|
||||
insert into mysql.help_category(help_category_id,name,parent_category_id)values(10003,'impossible_category_3',@category2_id);
|
||||
select @category3_id:= 10003;
|
||||
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(1,'impossible_function_1',@category1_id,'description of \n impossible_function1\n','example of \n impossible_function1');
|
||||
select @topic1_id:= 1;
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(2,'impossible_function_2',@category1_id,'description of \n impossible_function2\n','example of \n impossible_function2');
|
||||
select @topic2_id:= 2;
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(3,'impossible_function_3',@category2_id,'description of \n impossible_function3\n','example of \n impossible_function3');
|
||||
select @topic3_id:= 3;
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(4,'impossible_function_4',@category2_id,'description of \n impossible_function4\n','example of \n impossible_function4');
|
||||
select @topic4_id:= 4;
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(5,'impossible_function_7',@category3_id,'description of \n impossible_function5\n','example of \n impossible_function7');
|
||||
select @topic5_id:= 5;
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(10101,'impossible_function_1',@category1_id,'description of \n impossible_function1\n','example of \n impossible_function1');
|
||||
select @topic1_id:= 10101;
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(10102,'impossible_function_2',@category1_id,'description of \n impossible_function2\n','example of \n impossible_function2');
|
||||
select @topic2_id:= 10102;
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(10103,'impossible_function_3',@category2_id,'description of \n impossible_function3\n','example of \n impossible_function3');
|
||||
select @topic3_id:= 10103;
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(10104,'impossible_function_4',@category2_id,'description of \n impossible_function4\n','example of \n impossible_function4');
|
||||
select @topic4_id:= 10104;
|
||||
insert into mysql.help_topic(help_topic_id,name,help_category_id,description,example)values(10105,'impossible_function_7',@category3_id,'description of \n impossible_function5\n','example of \n impossible_function7');
|
||||
select @topic5_id:= 10105;
|
||||
|
||||
insert into mysql.help_keyword(help_keyword_id,name)values(1,'impossible_function_1');
|
||||
select @keyword1_id:= 1;
|
||||
insert into mysql.help_keyword(help_keyword_id,name)values(2,'impossible_function_5');
|
||||
select @keyword2_id:= 2;
|
||||
insert into mysql.help_keyword(help_keyword_id,name)values(3,'impossible_function_6');
|
||||
select @keyword3_id:= 3;
|
||||
insert into mysql.help_keyword(help_keyword_id,name)values(10201,'impossible_function_1');
|
||||
select @keyword1_id:= 10201;
|
||||
insert into mysql.help_keyword(help_keyword_id,name)values(10202,'impossible_function_5');
|
||||
select @keyword2_id:= 10202;
|
||||
insert into mysql.help_keyword(help_keyword_id,name)values(10203,'impossible_function_6');
|
||||
select @keyword3_id:= 10203;
|
||||
|
||||
insert into mysql.help_relation(help_keyword_id,help_topic_id)values(@keyword1_id,@topic2_id);
|
||||
insert into mysql.help_relation(help_keyword_id,help_topic_id)values(@keyword2_id,@topic1_id);
|
||||
|
@ -161,4 +161,34 @@ show /*!50002 GLOBAL */ status like 'Handler_rollback';
|
||||
connection default;
|
||||
drop table t1;
|
||||
disconnect con1;
|
||||
|
||||
#
|
||||
# Bug #13191: INSERT...ON DUPLICATE KEY UPDATE of UTF-8 string fields
|
||||
# used in partial unique indices.
|
||||
#
|
||||
|
||||
CREATE TABLE t1(c1 TEXT, UNIQUE (c1(1)), cnt INT DEFAULT 1)
|
||||
ENGINE=INNODB CHARACTER SET UTF8;
|
||||
INSERT INTO t1 (c1) VALUES ('1a');
|
||||
SELECT * FROM t1;
|
||||
INSERT INTO t1 (c1) VALUES ('1b') ON DUPLICATE KEY UPDATE cnt=cnt+1;
|
||||
SELECT * FROM t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
CREATE TABLE t1(c1 VARCHAR(2), UNIQUE (c1(1)), cnt INT DEFAULT 1)
|
||||
ENGINE=INNODB CHARACTER SET UTF8;
|
||||
INSERT INTO t1 (c1) VALUES ('1a');
|
||||
SELECT * FROM t1;
|
||||
INSERT INTO t1 (c1) VALUES ('1b') ON DUPLICATE KEY UPDATE cnt=cnt+1;
|
||||
SELECT * FROM t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
CREATE TABLE t1(c1 CHAR(2), UNIQUE (c1(1)), cnt INT DEFAULT 1)
|
||||
ENGINE=INNODB CHARACTER SET UTF8;
|
||||
INSERT INTO t1 (c1) VALUES ('1a');
|
||||
SELECT * FROM t1;
|
||||
INSERT INTO t1 (c1) VALUES ('1b') ON DUPLICATE KEY UPDATE cnt=cnt+1;
|
||||
SELECT * FROM t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo End of 4.1 tests
|
||||
|
@ -454,4 +454,17 @@ ALTER TABLE m1 ENGINE=MERGE UNION=(t1);
|
||||
SELECT * FROM m1;
|
||||
DROP TABLE t1, m1;
|
||||
|
||||
#
|
||||
# BUG#24342 - Incorrect results with query over MERGE table
|
||||
#
|
||||
CREATE TABLE t1 (a VARCHAR(255) CHARACTER SET latin1 COLLATE latin1_german2_ci,
|
||||
b INT, INDEX(a,b));
|
||||
CREATE TABLE t2 LIKE t1;
|
||||
CREATE TABLE t3 LIKE t1;
|
||||
ALTER TABLE t3 ENGINE=MERGE UNION=(t1,t2);
|
||||
INSERT INTO t1 VALUES ('ss',1);
|
||||
INSERT INTO t2 VALUES ('ss',2),(0xDF,2);
|
||||
SELECT COUNT(*) FROM t3 WHERE a=0xDF AND b=2;
|
||||
DROP TABLE t1,t2,t3;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
@ -281,4 +281,23 @@ select left(a,10), a, sum(b) from t1 group by 1,2 with rollup;
|
||||
select left(a,10) x, a, sum(b) from t1 group by x,a with rollup;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bug #24856: ROLLUP by const item in a query with DISTINCT
|
||||
#
|
||||
|
||||
CREATE TABLE t1 (a int, b int);
|
||||
INSERT INTO t1
|
||||
VALUES (2,10),(3,30),(2,40),(1,10),(2,30),(1,20),(2,10);
|
||||
|
||||
SELECT a, SUM(b) FROM t1 GROUP BY a WITH ROLLUP;
|
||||
SELECT DISTINCT a, SUM(b) FROM t1 GROUP BY a WITH ROLLUP;
|
||||
SELECT a, b, COUNT(*) FROM t1 GROUP BY a,b WITH ROLLUP;
|
||||
SELECT DISTINCT a, b, COUNT(*) FROM t1 GROUP BY a,b WITH ROLLUP;
|
||||
|
||||
SELECT 'x', a, SUM(b) FROM t1 GROUP BY 1,2 WITH ROLLUP;
|
||||
SELECT DISTINCT 'x', a, SUM(b) FROM t1 GROUP BY 1,2 WITH ROLLUP;
|
||||
SELECT DISTINCT 'x', a, SUM(b) FROM t1 GROUP BY 1,2 WITH ROLLUP;
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
@ -83,4 +83,74 @@ drop table t1;
|
||||
SELECT ROW(2,10) <=> ROW(3,4);
|
||||
SELECT ROW(NULL,10) <=> ROW(3,NULL);
|
||||
|
||||
#
|
||||
# Bug #27484: nested row expressions in IN predicate
|
||||
#
|
||||
|
||||
--error 1241
|
||||
SELECT ROW(1,ROW(2,3)) IN (ROW(1,ROW(2,3)),ROW(1,1));
|
||||
--error 1241
|
||||
SELECT ROW(1,ROW(2,3)) IN (ROW(1,ROW(2,3)),ROW(1,1),ROW(1,ROW(2,3)));
|
||||
--error 1241
|
||||
SELECT ROW(1,ROW(2,3)) IN (ROW(1,ROW(2,3)),ROW(1,ROW(2,2,2)));
|
||||
--error 1241
|
||||
SELECT ROW(1,ROW(2,3,4)) IN (ROW(1,ROW(2,3,4)),ROW(1,ROW(2,2)));
|
||||
|
||||
--error 1241
|
||||
SELECT ROW(1,ROW(2,3)) IN (ROW(1,ROW(2,3)),(SELECT 1,1));
|
||||
--error 1241
|
||||
SELECT ROW(1,ROW(2,3)) IN (ROW(1,ROW(2,3)),(SELECT 1,1),ROW(1,ROW(2,4)));
|
||||
--error 1241
|
||||
SELECT ROW(1,ROW(2,3)) IN ((SELECT 1,1),ROW(1,ROW(2,3)));
|
||||
|
||||
--error 1241
|
||||
SELECT ROW(2,1) IN (ROW(21,2),ROW(ROW(1,1,3),0));
|
||||
--error 1241
|
||||
SELECT ROW(2,1) IN (ROW(ROW(1,1,3),0),ROW(21,2));
|
||||
|
||||
#
|
||||
# Bug#27704: erroneous comparison of rows with NULL components
|
||||
#
|
||||
CREATE TABLE t1(a int, b int, c int);
|
||||
INSERT INTO t1 VALUES (1, 2, 3),
|
||||
(NULL, 2, 3 ), (1, NULL, 3 ), (1, 2, NULL),
|
||||
(NULL, 2, 3+1), (1, NULL, 3+1), (1, 2+1, NULL),
|
||||
(NULL, 2, 3-1), (1, NULL, 3-1), (1, 2-1, NULL);
|
||||
|
||||
SELECT (1,2,3) = (1, NULL, 3);
|
||||
SELECT (1,2,3) = (1+1, NULL, 3);
|
||||
SELECT (1,2,3) = (1, NULL, 3+1);
|
||||
SELECT * FROM t1 WHERE (a,b,c) = (1,2,3);
|
||||
|
||||
SELECT (1,2,3) <> (1, NULL, 3);
|
||||
SELECT (1,2,3) <> (1+1, NULL, 3);
|
||||
SELECT (1,2,3) <> (1, NULL, 3+1);
|
||||
SELECT * FROM t1 WHERE (a,b,c) <> (1,2,3);
|
||||
|
||||
SELECT (1,2,3) < (NULL, 2, 3);
|
||||
SELECT (1,2,3) < (1, NULL, 3);
|
||||
SELECT (1,2,3) < (1-1, NULL, 3);
|
||||
SELECT (1,2,3) < (1+1, NULL, 3);
|
||||
SELECT * FROM t1 WHERE (a,b,c) < (1,2,3);
|
||||
|
||||
SELECT (1,2,3) <= (NULL, 2, 3);
|
||||
SELECT (1,2,3) <= (1, NULL, 3);
|
||||
SELECT (1,2,3) <= (1-1, NULL, 3);
|
||||
SELECT (1,2,3) <= (1+1, NULL, 3);
|
||||
SELECT * FROM t1 WHERE (a,b,c) <= (1,2,3);
|
||||
|
||||
SELECT (1,2,3) > (NULL, 2, 3);
|
||||
SELECT (1,2,3) > (1, NULL, 3);
|
||||
SELECT (1,2,3) > (1-1, NULL, 3);
|
||||
SELECT (1,2,3) > (1+1, NULL, 3);
|
||||
SELECT * FROM t1 WHERE (a,b,c) > (1,2,3);
|
||||
|
||||
SELECT (1,2,3) >= (NULL, 2, 3);
|
||||
SELECT (1,2,3) >= (1, NULL, 3);
|
||||
SELECT (1,2,3) >= (1-1, NULL, 3);
|
||||
SELECT (1,2,3) >= (1+1, NULL, 3);
|
||||
SELECT * FROM t1 WHERE (a,b,c) >= (1,2,3);
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
Reference in New Issue
Block a user