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 Like likeChar;
|
||||
static Like likeBinary;
|
||||
static Like likeVarchar;
|
||||
static Like likeVarbinary;
|
||||
static Like likeLongvarchar;
|
||||
static Like likeLongvarbinary;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -107,12 +107,12 @@ NdbSqlUtil::m_typeList[] = {
|
||||
{ // 16
|
||||
Type::Binary,
|
||||
cmpBinary,
|
||||
NULL
|
||||
likeBinary
|
||||
},
|
||||
{ // 17
|
||||
Type::Varbinary,
|
||||
cmpVarbinary,
|
||||
NULL
|
||||
likeVarbinary
|
||||
},
|
||||
{ // 18
|
||||
Type::Datetime,
|
||||
@@ -147,7 +147,7 @@ NdbSqlUtil::m_typeList[] = {
|
||||
{ // 24
|
||||
Type::Longvarbinary,
|
||||
cmpLongvarbinary,
|
||||
NULL
|
||||
likeLongvarbinary
|
||||
},
|
||||
{ // 25
|
||||
Type::Time,
|
||||
@@ -805,6 +805,13 @@ NdbSqlUtil::likeChar(const void* info, const void* p1, unsigned n1, const void*
|
||||
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
|
||||
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;
|
||||
}
|
||||
|
||||
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
|
||||
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;
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
bool
|
||||
|
||||
Reference in New Issue
Block a user