mirror of
https://github.com/MariaDB/server.git
synced 2025-08-07 00:04:31 +03:00
This commit is contained in:
@@ -997,6 +997,19 @@ mysqld_dump_create_info(THD *thd, TABLE *table, int fd)
|
|||||||
DBUG_RETURN(0);
|
DBUG_RETURN(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* possible TODO: call find_keyword() from sql_lex.cc here */
|
||||||
|
static bool require_quotes(const char *name, uint length)
|
||||||
|
{
|
||||||
|
uint i, d, c;
|
||||||
|
for (i=0; i<length; i+=d)
|
||||||
|
{
|
||||||
|
c=((uchar *)name)[i];
|
||||||
|
d=my_mbcharlen(system_charset_info, c);
|
||||||
|
if (d==1 && !system_charset_info->ident_map[c])
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
append_identifier(THD *thd, String *packet, const char *name, uint length)
|
append_identifier(THD *thd, String *packet, const char *name, uint length)
|
||||||
@@ -1007,7 +1020,8 @@ append_identifier(THD *thd, String *packet, const char *name, uint length)
|
|||||||
else
|
else
|
||||||
qtype= '`';
|
qtype= '`';
|
||||||
|
|
||||||
if (thd->options & OPTION_QUOTE_SHOW_CREATE)
|
if ((thd->options & OPTION_QUOTE_SHOW_CREATE) ||
|
||||||
|
require_quotes(name, length))
|
||||||
{
|
{
|
||||||
packet->append(&qtype, 1);
|
packet->append(&qtype, 1);
|
||||||
packet->append(name, length, system_charset_info);
|
packet->append(name, length, system_charset_info);
|
||||||
|
Reference in New Issue
Block a user