Skip to content

Commit df01b89

Browse files
committed
PgSQL: No TranslateToString usage
- Extractor uses direct calls of Schema name - Translate (..., SchemaNode) uses base translation except for Temporary table - TranslateToString implementation is commented
1 parent 17d715a commit df01b89

File tree

2 files changed

+22
-17
lines changed

2 files changed

+22
-17
lines changed

Orm/Xtensive.Orm.PostgreSql/Sql.Drivers.PostgreSql/v8_0/Extractor.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1250,15 +1250,15 @@ protected virtual ISqlCompileUnit BuildExtractSequencesQuery(ExtractionContext c
12501250
var sequenceMap = context.SequenceMap;
12511251
foreach (var (segId, seq) in sequenceMap) {
12521252
if (query.Length == 0) {
1253-
query.AppendFormat("SELECT * FROM (\nSELECT {0} as id, * FROM {1}", segId,
1254-
Driver.Translator.TranslateToString(null, seq)); // context is not used in PostrgreSQL translator
1253+
_ = query.AppendFormat("SELECT * FROM (\nSELECT {0} as id, * FROM {1}", segId,
1254+
SqlHelper.Quote(SqlHelper.EscapeSetup.WithQuotes, new[] { seq.Schema.DbName, seq.DbName }));
12551255
}
12561256
else {
1257-
query.AppendFormat("\nUNION ALL\nSELECT {0} as id, * FROM {1}", segId,
1258-
Driver.Translator.TranslateToString(null, seq)); // context is not used in PostgreSQL translator
1257+
_ = query.AppendFormat("\nUNION ALL\nSELECT {0} as id, * FROM {1}", segId,
1258+
SqlHelper.Quote(SqlHelper.EscapeSetup.WithQuotes, new[] { seq.Schema.DbName, seq.DbName }));
12591259
}
12601260
}
1261-
query.Append("\n) all_sequences\nORDER BY id");
1261+
_ = query.Append("\n) all_sequences\nORDER BY id");
12621262
}
12631263
return SqlDml.Fragment(SqlDml.Native(query.ToString()));
12641264
}

Orm/Xtensive.Orm.PostgreSql/Sql.Drivers.PostgreSql/v8_0/Translator.cs

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -222,23 +222,28 @@ public override void Translate(IOutput output, SqlMatchType mt)
222222
});
223223
}
224224

225+
///// <inheritdoc/>
226+
//public override string TranslateToString(SqlCompilerContext context, SchemaNode node)
227+
//{
228+
// //temporary tables need no schema qualifier
229+
// if (node is TemporaryTable || node.Schema == null) {
230+
// return QuoteIdentifier(new[] { node.Name });
231+
// }
232+
// return QuoteIdentifier(new[] { node.Schema.Name, node.Name });
233+
//}
234+
225235
/// <inheritdoc/>
226-
public override string TranslateToString(SqlCompilerContext context, SchemaNode node)
236+
public override void Translate(SqlCompilerContext context, SchemaNode node)
227237
{
228-
//temporary tables need no schema qualifier
229-
if (!(node is TemporaryTable) && node.Schema != null) {
230-
return context == null
231-
? QuoteIdentifier(new[] { node.Schema.Name, node.Name })
232-
: QuoteIdentifier(new[] { context.SqlNodeActualizer.Actualize(node.Schema), node.Name });
233-
238+
if (node is TemporaryTable) {
239+
TranslateIdentifier(context.Output, node.Name);
240+
}
241+
else {
242+
base.Translate(context, node);
234243
}
235-
return QuoteIdentifier(new[] { node.Name });
244+
//context.Output.Append(TranslateToString(context, node));
236245
}
237246

238-
/// <inheritdoc/>
239-
public override void Translate(SqlCompilerContext context, SchemaNode node) =>
240-
context.Output.Append(TranslateToString(context, node));
241-
242247
/// <inheritdoc/>
243248
public override void Translate(SqlCompilerContext context, SqlCreateTable node, CreateTableSection section)
244249
{

0 commit comments

Comments
 (0)