mirror of
https://github.com/MariaDB/server.git
synced 2025-11-16 20:23:18 +03:00
ndb - allow LIKE with Binary strings
This commit is contained in:
@@ -178,8 +178,11 @@ private:
|
|||||||
static Cmp cmpDecimalunsigned;
|
static Cmp cmpDecimalunsigned;
|
||||||
//
|
//
|
||||||
static Like likeChar;
|
static Like likeChar;
|
||||||
|
static Like likeBinary;
|
||||||
static Like likeVarchar;
|
static Like likeVarchar;
|
||||||
|
static Like likeVarbinary;
|
||||||
static Like likeLongvarchar;
|
static Like likeLongvarchar;
|
||||||
|
static Like likeLongvarbinary;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -107,12 +107,12 @@ NdbSqlUtil::m_typeList[] = {
|
|||||||
{ // 16
|
{ // 16
|
||||||
Type::Binary,
|
Type::Binary,
|
||||||
cmpBinary,
|
cmpBinary,
|
||||||
NULL
|
likeBinary
|
||||||
},
|
},
|
||||||
{ // 17
|
{ // 17
|
||||||
Type::Varbinary,
|
Type::Varbinary,
|
||||||
cmpVarbinary,
|
cmpVarbinary,
|
||||||
NULL
|
likeVarbinary
|
||||||
},
|
},
|
||||||
{ // 18
|
{ // 18
|
||||||
Type::Datetime,
|
Type::Datetime,
|
||||||
@@ -147,7 +147,7 @@ NdbSqlUtil::m_typeList[] = {
|
|||||||
{ // 24
|
{ // 24
|
||||||
Type::Longvarbinary,
|
Type::Longvarbinary,
|
||||||
cmpLongvarbinary,
|
cmpLongvarbinary,
|
||||||
NULL
|
likeLongvarbinary
|
||||||
},
|
},
|
||||||
{ // 25
|
{ // 25
|
||||||
Type::Time,
|
Type::Time,
|
||||||
@@ -805,6 +805,13 @@ NdbSqlUtil::likeChar(const void* info, const void* p1, unsigned n1, const void*
|
|||||||
return k;
|
return k;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
NdbSqlUtil::likeBinary(const void* info, const void* p1, unsigned n1, const void* p2, unsigned n2)
|
||||||
|
{
|
||||||
|
assert(info == 0);
|
||||||
|
return likeChar(&my_charset_bin, p1, n1, p2, n2);
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
NdbSqlUtil::likeVarchar(const void* info, const void* p1, unsigned n1, const void* p2, unsigned n2)
|
NdbSqlUtil::likeVarchar(const void* info, const void* p1, unsigned n1, const void* p2, unsigned n2)
|
||||||
{
|
{
|
||||||
@@ -825,6 +832,13 @@ NdbSqlUtil::likeVarchar(const void* info, const void* p1, unsigned n1, const voi
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
NdbSqlUtil::likeVarbinary(const void* info, const void* p1, unsigned n1, const void* p2, unsigned n2)
|
||||||
|
{
|
||||||
|
assert(info == 0);
|
||||||
|
return likeVarchar(&my_charset_bin, p1, n1, p2, n2);
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
NdbSqlUtil::likeLongvarchar(const void* info, const void* p1, unsigned n1, const void* p2, unsigned n2)
|
NdbSqlUtil::likeLongvarchar(const void* info, const void* p1, unsigned n1, const void* p2, unsigned n2)
|
||||||
{
|
{
|
||||||
@@ -845,6 +859,13 @@ NdbSqlUtil::likeLongvarchar(const void* info, const void* p1, unsigned n1, const
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
NdbSqlUtil::likeLongvarbinary(const void* info, const void* p1, unsigned n1, const void* p2, unsigned n2)
|
||||||
|
{
|
||||||
|
assert(info == 0);
|
||||||
|
return likeLongvarchar(&my_charset_bin, p1, n1, p2, n2);
|
||||||
|
}
|
||||||
|
|
||||||
// check charset
|
// check charset
|
||||||
|
|
||||||
bool
|
bool
|
||||||
|
|||||||
Reference in New Issue
Block a user