Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
883883b0
Commit
883883b0
authored
Oct 14, 2004
by
bell@sanja.is.com.ua
Browse files
Options
Browse Files
Download
Plain Diff
Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-4.1
parents
1729ec2a
299297d4
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
40 additions
and
2 deletions
+40
-2
mysql-test/r/ctype_utf8.result
mysql-test/r/ctype_utf8.result
+11
-0
mysql-test/t/ctype_utf8.test
mysql-test/t/ctype_utf8.test
+23
-0
strings/ctype-mb.c
strings/ctype-mb.c
+4
-0
strings/ctype-utf8.c
strings/ctype-utf8.c
+2
-2
No files found.
mysql-test/r/ctype_utf8.result
View file @
883883b0
...
@@ -779,3 +779,14 @@ id term
...
@@ -779,3 +779,14 @@ id term
2 testetest
2 testetest
3 testtest
3 testtest
DROP TABLE t1;
DROP TABLE t1;
set names utf8;
create table t1 (
a int primary key,
b varchar(6),
index b3(b(3))
) engine=innodb character set=utf8;
insert into t1 values(1,'foo'),(2,'foobar');
select * from t1 where b like 'foob%';
a b
2 foobar
drop table t1;
mysql-test/t/ctype_utf8.test
View file @
883883b0
...
@@ -221,7 +221,9 @@ drop table t1;
...
@@ -221,7 +221,9 @@ drop table t1;
# Bug 4521: unique key prefix interacts poorly with utf8
# Bug 4521: unique key prefix interacts poorly with utf8
# InnoDB: keys with prefix compression, case insensitive collation.
# InnoDB: keys with prefix compression, case insensitive collation.
#
#
--
disable_warnings
create
table
t1
(
c
varchar
(
30
)
character
set
utf8
,
unique
(
c
(
10
)))
engine
=
innodb
;
create
table
t1
(
c
varchar
(
30
)
character
set
utf8
,
unique
(
c
(
10
)))
engine
=
innodb
;
--
enable_warnings
insert
into
t1
values
(
'1'
),(
'2'
),(
'3'
),(
'x'
),(
'y'
),(
'z'
);
insert
into
t1
values
(
'1'
),(
'2'
),(
'3'
),(
'x'
),(
'y'
),(
'z'
);
insert
into
t1
values
(
'aaaaaaaaaa'
);
insert
into
t1
values
(
'aaaaaaaaaa'
);
--
error
1062
--
error
1062
...
@@ -269,7 +271,9 @@ drop table t1;
...
@@ -269,7 +271,9 @@ drop table t1;
# Bug 4521: unique key prefix interacts poorly with utf8
# Bug 4521: unique key prefix interacts poorly with utf8
# InnoDB: fixed length keys, case insensitive collation
# InnoDB: fixed length keys, case insensitive collation
#
#
--
disable_warnings
create
table
t1
(
c
char
(
3
)
character
set
utf8
,
unique
(
c
(
2
)))
engine
=
innodb
;
create
table
t1
(
c
char
(
3
)
character
set
utf8
,
unique
(
c
(
2
)))
engine
=
innodb
;
--
enable_warnings
insert
into
t1
values
(
'1'
),(
'2'
),(
'3'
),(
'4'
),(
'x'
),(
'y'
),(
'z'
);
insert
into
t1
values
(
'1'
),(
'2'
),(
'3'
),(
'4'
),(
'x'
),(
'y'
),(
'z'
);
insert
into
t1
values
(
'a'
);
insert
into
t1
values
(
'a'
);
insert
into
t1
values
(
'aa'
);
insert
into
t1
values
(
'aa'
);
...
@@ -504,10 +508,12 @@ drop table t1;
...
@@ -504,10 +508,12 @@ drop table t1;
# Bug#4594: column index make = failed for gbk, but like works
# Bug#4594: column index make = failed for gbk, but like works
# Check InnoDB
# Check InnoDB
#
#
--
disable_warnings
create
table
t1
(
create
table
t1
(
str
varchar
(
255
)
character
set
utf8
not
null
,
str
varchar
(
255
)
character
set
utf8
not
null
,
key
str
(
str
(
2
))
key
str
(
str
(
2
))
)
engine
=
innodb
;
)
engine
=
innodb
;
--
enable_warnings
INSERT
INTO
t1
VALUES
(
'str'
);
INSERT
INTO
t1
VALUES
(
'str'
);
INSERT
INTO
t1
VALUES
(
'str2'
);
INSERT
INTO
t1
VALUES
(
'str2'
);
select
*
from
t1
where
str
=
'str'
;
select
*
from
t1
where
str
=
'str'
;
...
@@ -563,10 +569,12 @@ DROP TABLE t1;
...
@@ -563,10 +569,12 @@ DROP TABLE t1;
# Bug #5723: length(<varchar utf8 field>) returns varying results
# Bug #5723: length(<varchar utf8 field>) returns varying results
#
#
SET
NAMES
utf8
;
SET
NAMES
utf8
;
--
disable_warnings
CREATE
TABLE
t1
(
CREATE
TABLE
t1
(
subject
varchar
(
255
)
character
set
utf8
collate
utf8_unicode_ci
,
subject
varchar
(
255
)
character
set
utf8
collate
utf8_unicode_ci
,
p
varchar
(
15
)
character
set
utf8
p
varchar
(
15
)
character
set
utf8
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
=
latin1
;
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
=
latin1
;
--
enable_warnings
INSERT
INTO
t1
VALUES
(
'谷川俊二と申しますが、インターネット予約の会員登録をしましたところ、メールアドレスを間違えてしまい会員IDが受け取ることが出来ませんでした。間違えアドレスはtani-shun@n.vodafone.ne.jpを書き込みました。どうすればよいですか? その他、住所等は間違えありません。連絡ください。よろしくお願いします。m(__)m'
,
'040312-000057'
);
INSERT
INTO
t1
VALUES
(
'谷川俊二と申しますが、インターネット予約の会員登録をしましたところ、メールアドレスを間違えてしまい会員IDが受け取ることが出来ませんでした。間違えアドレスはtani-shun@n.vodafone.ne.jpを書き込みました。どうすればよいですか? その他、住所等は間違えありません。連絡ください。よろしくお願いします。m(__)m'
,
'040312-000057'
);
INSERT
INTO
t1
VALUES
(
'aaa'
,
'bbb'
);
INSERT
INTO
t1
VALUES
(
'aaa'
,
'bbb'
);
SELECT
length
(
subject
)
FROM
t1
;
SELECT
length
(
subject
)
FROM
t1
;
...
@@ -612,3 +620,18 @@ SELECT id, term FROM t1 where (list_id = 1) AND (term = "test
...
@@ -612,3 +620,18 @@ SELECT id, term FROM t1 where (list_id = 1) AND (term = "test
SELECT
id
,
term
FROM
t1
where
(
list_id
=
1
)
AND
(
term
=
"testetest"
);
SELECT
id
,
term
FROM
t1
where
(
list_id
=
1
)
AND
(
term
=
"testetest"
);
SELECT
id
,
term
FROM
t1
where
(
list_id
=
1
)
AND
(
term
=
"testtest"
);
SELECT
id
,
term
FROM
t1
where
(
list_id
=
1
)
AND
(
term
=
"testtest"
);
DROP
TABLE
t1
;
DROP
TABLE
t1
;
#
# Bug #6019 SELECT tries to use too short prefix index on utf8 data
#
set
names
utf8
;
--
disable_warnings
create
table
t1
(
a
int
primary
key
,
b
varchar
(
6
),
index
b3
(
b
(
3
))
)
engine
=
innodb
character
set
=
utf8
;
--
enable_warnings
insert
into
t1
values
(
1
,
'foo'
),(
2
,
'foobar'
);
select
*
from
t1
where
b
like
'foob%'
;
drop
table
t1
;
strings/ctype-mb.c
View file @
883883b0
...
@@ -499,6 +499,10 @@ my_bool my_like_range_mb(CHARSET_INFO *cs,
...
@@ -499,6 +499,10 @@ my_bool my_like_range_mb(CHARSET_INFO *cs,
{
{
char
buf
[
10
];
char
buf
[
10
];
uint
buflen
;
uint
buflen
;
uint
charlen
=
my_charpos
(
cs
,
min_org
,
min_str
,
res_length
/
cs
->
mbmaxlen
);
if
(
charlen
<
(
uint
)
(
min_str
-
min_org
))
min_str
=
min_org
+
charlen
;
/* Write min key */
/* Write min key */
*
min_length
=
(
uint
)
(
min_str
-
min_org
);
*
min_length
=
(
uint
)
(
min_str
-
min_org
);
...
...
strings/ctype-utf8.c
View file @
883883b0
...
@@ -2059,7 +2059,7 @@ static MY_COLLATION_HANDLER my_collation_ci_handler =
...
@@ -2059,7 +2059,7 @@ static MY_COLLATION_HANDLER my_collation_ci_handler =
my_strnncoll_utf8
,
my_strnncoll_utf8
,
my_strnncollsp_utf8
,
my_strnncollsp_utf8
,
my_strnxfrm_utf8
,
my_strnxfrm_utf8
,
my_like_range_
simple
,
my_like_range_
mb
,
my_wildcmp_mb
,
my_wildcmp_mb
,
my_strcasecmp_utf8
,
my_strcasecmp_utf8
,
my_instr_mb
,
my_instr_mb
,
...
@@ -2119,7 +2119,7 @@ CHARSET_INFO my_charset_utf8_general_ci=
...
@@ -2119,7 +2119,7 @@ CHARSET_INFO my_charset_utf8_general_ci=
1
,
/* mbminlen */
1
,
/* mbminlen */
3
,
/* mbmaxlen */
3
,
/* mbmaxlen */
0
,
/* min_sort_char */
0
,
/* min_sort_char */
255
,
/* max_sort_char */
0xFFFF
,
/* max_sort_char */
&
my_charset_utf8_handler
,
&
my_charset_utf8_handler
,
&
my_collation_ci_handler
&
my_collation_ci_handler
};
};
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment