Skip to content

Commit 33e1749

Browse files
authored
Merge pull request #8254 from FirebirdSQL/work/gh-8253
Fixed #8253 : Incorrect handling of non-ASCII object names in CREATE MAPPING statement
2 parents 0799c12 + d519cb6 commit 33e1749

File tree

3 files changed

+3
-2
lines changed

3 files changed

+3
-2
lines changed

src/dsql/DdlNodes.epp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10628,6 +10628,7 @@ void MappingNode::runInSecurityDb(SecDbContext* secDbContext)
1062810628
ddl += ' ';
1062910629
if (from)
1063010630
{
10631+
ddl += "_utf8 ";
1063110632
addItem(ddl, fromUtf8.c_str(), '\'');
1063210633
ddl += ' ';
1063310634
}

src/dsql/parse.y

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7448,7 +7448,7 @@ map_from_symbol_name
74487448
%type <intlStringPtr> map_logoninfo
74497449
map_logoninfo
74507450
: sql_string
7451-
| valid_symbol_name { $$ = newNode<IntlString>($1->c_str()); }
7451+
| valid_symbol_name { $$ = newIntlString($1->c_str(), metadataCharSet->getName()); }
74527452
;
74537453

74547454
%type map_using(<mappingNode>)

src/isql/show.epp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5142,7 +5142,7 @@ static void printMap(bool extract, bool global, char* name, char* usng, char* pl
51425142
isqlGlob.printf("FROM %s", anyObj ? "ANY " : "");
51435143
printIdent(extract, fromType, "%s ");
51445144
if (!anyObj)
5145-
printIdent(extract, from, "%s ");
5145+
isqlGlob.printf("\'%s\' ", from);
51465146

51475147
isqlGlob.printf("TO %s ", toType ? "ROLE" : "USER");
51485148
if (to)

0 commit comments

Comments
 (0)