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
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
a7a762e2
Commit
a7a762e2
authored
Aug 16, 2005
by
andrey@lmy004
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix for bug #12595 (Escape character has to be exactly one)
parent
41e7178b
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
29 additions
and
1 deletion
+29
-1
mysql-test/r/select.result
mysql-test/r/select.result
+11
-0
mysql-test/t/select.test
mysql-test/t/select.test
+11
-0
sql/item_cmpfunc.cc
sql/item_cmpfunc.cc
+7
-1
No files found.
mysql-test/r/select.result
View file @
a7a762e2
...
@@ -2739,3 +2739,14 @@ DROP TABLE t1,t2;
...
@@ -2739,3 +2739,14 @@ DROP TABLE t1,t2;
select x'10' + 0, X'10' + 0, b'10' + 0, B'10' + 0;
select x'10' + 0, X'10' + 0, b'10' + 0, B'10' + 0;
x'10' + 0 X'10' + 0 b'10' + 0 B'10' + 0
x'10' + 0 X'10' + 0 b'10' + 0 B'10' + 0
16 16 2 2
16 16 2 2
CREATE TABLE BUG_12595(a varchar(100));
INSERT INTO BUG_12595 VALUES ('hakan%'), ('hakank'), ("ha%an");
SELECT * FROM BUG_12595 WHERE a LIKE 'hakan*%' ESCAPE '*';
a
hakan%
SELECT * FROM BUG_12595 WHERE a LIKE 'hakan**%' ESCAPE '**';
ERROR HY000: Incorrect arguments to ESCAPE
SELECT * FROM BUG_12595 WHERE a LIKE 'ha%%an' ESCAPE '%';
a
ha%an
DROP TABLE BUG_12595;
mysql-test/t/select.test
View file @
a7a762e2
...
@@ -2350,3 +2350,14 @@ DROP TABLE t1,t2;
...
@@ -2350,3 +2350,14 @@ DROP TABLE t1,t2;
#
#
select
x
'10'
+
0
,
X
'10'
+
0
,
b
'10'
+
0
,
B
'10'
+
0
;
select
x
'10'
+
0
,
X
'10'
+
0
,
b
'10'
+
0
,
B
'10'
+
0
;
#
# BUG #12595
#
CREATE
TABLE
BUG_12595
(
a
varchar
(
100
));
INSERT
INTO
BUG_12595
VALUES
(
'hakan%'
),
(
'hakank'
),
(
"ha%an"
);
SELECT
*
FROM
BUG_12595
WHERE
a
LIKE
'hakan*%'
ESCAPE
'*'
;
--
error
1210
SELECT
*
FROM
BUG_12595
WHERE
a
LIKE
'hakan**%'
ESCAPE
'**'
;
SELECT
*
FROM
BUG_12595
WHERE
a
LIKE
'ha%%an'
ESCAPE
'%'
;
DROP
TABLE
BUG_12595
;
sql/item_cmpfunc.cc
View file @
a7a762e2
...
@@ -2792,6 +2792,12 @@ bool Item_func_like::fix_fields(THD *thd, Item **ref)
...
@@ -2792,6 +2792,12 @@ bool Item_func_like::fix_fields(THD *thd, Item **ref)
{
{
/* If we are on execution stage */
/* If we are on execution stage */
String
*
escape_str
=
escape_item
->
val_str
(
&
tmp_value1
);
String
*
escape_str
=
escape_item
->
val_str
(
&
tmp_value1
);
/* ESCAPE must be 1 char in length.*/
if
(
escape_str
&&
escape_str
->
numchars
()
!=
1
)
{
my_error
(
ER_WRONG_ARGUMENTS
,
MYF
(
0
),
"ESCAPE"
);
return
TRUE
;
}
escape
=
escape_str
?
*
(
escape_str
->
ptr
())
:
'\\'
;
escape
=
escape_str
?
*
(
escape_str
->
ptr
())
:
'\\'
;
/*
/*
...
...
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