diff --git a/include/SqlDB.h b/include/SqlDB.h index 09b6331a99..d4e534156e 100644 --- a/include/SqlDB.h +++ b/include/SqlDB.h @@ -131,7 +131,7 @@ public: /** * @return string with compatible LIMIT clause syntax * LIMIT [offset], row_count - * + * * +---+---+---+---+---+---+---+---+-- * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |... * +---+---+---+---+---+---+---+---+-- diff --git a/src/pool/PoolObjectSQL.cc b/src/pool/PoolObjectSQL.cc index 9f8fc88882..7ba467e548 100644 --- a/src/pool/PoolObjectSQL.cc +++ b/src/pool/PoolObjectSQL.cc @@ -97,7 +97,14 @@ int PoolObjectSQL::select_oid(SqlDB *db, const char * _table, ostringstream oss; - oss << "SELECT oid FROM " << _table << " WHERE name = '" << sql_name << "'"; + oss << "SELECT oid FROM " << _table << " WHERE "; + + if (Nebula::instance().get_db_backend() == "mysql") + { + oss << "BINARY "; + } + + oss << "name = '" << sql_name << "'"; if ( _uid != -1 ) { @@ -176,7 +183,14 @@ int PoolObjectSQL::select(SqlDB *db, const string& _name, int _uid) set_callback( static_cast(&PoolObjectSQL::select_cb)); - oss << "SELECT body FROM " << table << " WHERE name = '" << sql_name << "'"; + oss << "SELECT body FROM " << table << " WHERE "; + + if (Nebula::instance().get_db_backend() == "mysql") + { + oss << "BINARY "; + } + + oss << "name = '" << sql_name << "'"; if ( _uid != -1 ) {