Idioma

QuerySqlGenerator Classe

Definição

Um gerador SQL de consulta a ser obtido IRelationalCommand para determinado SelectExpression.

Esse tipo normalmente é usado por provedores de banco de dados (e outras extensões). Geralmente, ele não é usado no código do aplicativo.

[System.Runtime.CompilerServices.Nullable(0)]
public class QuerySqlGenerator : Microsoft.EntityFrameworkCore.Query.SqlExpressionVisitor
[System.Runtime.CompilerServices.Nullable(0)]
public class QuerySqlGenerator : System.Linq.Expressions.ExpressionVisitor
public class QuerySqlGenerator : Microsoft.EntityFrameworkCore.Query.SqlExpressionVisitor
[<System.Runtime.CompilerServices.Nullable(0)>]
type QuerySqlGenerator = class
    inherit SqlExpressionVisitor
[<System.Runtime.CompilerServices.Nullable(0)>]
type QuerySqlGenerator = class
    inherit ExpressionVisitor
type QuerySqlGenerator = class
    inherit SqlExpressionVisitor
Public Class QuerySqlGenerator
Inherits SqlExpressionVisitor
Public Class QuerySqlGenerator
Inherits ExpressionVisitor
Herança
Herança
QuerySqlGenerator
Atributos

Construtores

Nome Descrição
QuerySqlGenerator(QuerySqlGeneratorDependencies)

Um gerador SQL de consulta a ser obtido IRelationalCommand para determinado SelectExpression.

Esse tipo normalmente é usado por provedores de banco de dados (e outras extensões). Geralmente, ele não é usado no código do aplicativo.

Propriedades

Nome Descrição
AliasSeparator

O separador de alias padrão.

Dependencies

Dependências específicas do provedor relacional para esse serviço.

Sql

O construtor de comandos SQL atual.

Métodos

Nome Descrição
CheckComposableSql(String)

Verifica se uma determinada cadeia de caracteres SQL é composável, ou seja, pode ser inserida como uma subconsulta em uma consulta SQL maior.

CheckComposableSqlTrimmed(ReadOnlySpan<Char>)

Verifica se uma determinada cadeia de caracteres SQL é composável, ou seja, pode ser inserida como uma subconsulta em uma consulta SQL maior. O fornecido sql já está cortado para espaço em branco e comentários.

GenerateEmptyProjection(SelectExpression)

Gera SQL para uma projeção vazia para uma expressão SELECT. Normalmente, esse é um único 1 literal, mas pode ser substituído por provedores que exigem um formato diferente.

GenerateExists(ExistsExpression, Boolean)

Gera SQL para uma expressão EXISTS.

GenerateFrom(SelectExpression)

Gera SQL para a cláusula FROM da expressão SELECT fornecida.

GenerateIn(InExpression, Boolean)

Gera SQL para uma expressão IN.

GenerateLike(LikeExpression, Boolean)

Gera SQL para a expressão LIKE.

GenerateLimitOffset(SelectExpression)

Gera SQL para as cláusulas LIMIT/OFFSET da expressão SELECT fornecida.

GenerateOperator(SqlBinaryExpression)
Obsoleto.

Gera um operador SQL para uma operação binária do SQL.

GenerateOrderings(SelectExpression)

Gera SQL para a cláusula ORDER BY da expressão SELECT fornecida.

GenerateProjection(SelectExpression)

Gera SQL para a cláusula de projeção da expressão SELECT fornecida.

GeneratePseudoFromClause()

Gera SQL para uma cláusula pseudo FROM. Isso é exigido por alguns provedores quando uma consulta não tem nenhuma cláusula FROM real.

GenerateRootCommand(Expression)

Gera o comando para a expressão de consulta de nível superior fornecida. Isso permite que os provedores interceptem se uma expressão exigir processamento diferente quando estiver no nível superior.

GenerateSetOperation(SetOperationBase)

Gera SQL para uma operação de conjunto.

GenerateSetOperationOperand(SetOperationBase, SelectExpression)

Gera SQL para um operando dentro de uma operação definida.

GenerateTagsHeaderComment(ISet<String>)

Gera o comentário principal para marcas.

GenerateTagsHeaderComment(SelectExpression)
Obsoleto.

Gera o comentário principal para marcas.

GenerateTop(SelectExpression)

Gera SQL para a cláusula TOP da expressão SELECT fornecida.

GenerateValues(ValuesExpression)

Gera SQL para uma expressão VALUES.

GetCommand(Expression)

Obtém um comando relacional para uma expressão de consulta.

GetCommand(SelectExpression)

Obtém um comando relacional para um SelectExpression.

GetOperator(SqlBinaryExpression)

Obtém o operador SQL para uma operação binária do SQL.

RequiresParentheses(SqlExpression, SqlExpression)

Retorna um valor bool que indica se a expressão SQL interna precisa ser colocada dentro de parênteses ao gerar SQL para a expressão SQL externa.

TryGenerateWithoutWrappingSelect(SelectExpression)

Se possível, gera a expressão contida no fornecido selectExpression sem a disposição SELECT. Isso pode ser feito para definir operações e VALORES, que podem aparecer como instruções de nível superior sem a necessidade de serem encapsuladas em SELECT.

TryGetOperatorInfo(SqlExpression, Int32, Boolean)

Retorna um valor numérico que representa a precedência do determinado expression, bem como sua associatividade. Elas controlam se parênteses são gerados em torno da expressão.

VisitAtTimeZone(AtTimeZoneExpression)

Gera SQL para uma expressão AT TIME ZONE.

VisitCase(CaseExpression)

Gera SQL para um constructo CASE/WHEN da cláusula CASE.

VisitCollate(CollateExpression)

Gera SQL para uma expressão COLLATE.

VisitColumn(ColumnExpression)

Gera SQL para uma coluna.

VisitCrossApply(CrossApplyExpression)

Gera SQL para uma aplicação cruzada.

VisitCrossJoin(CrossJoinExpression)

Gera SQL para uma junção cruzada.

VisitDelete(DeleteExpression)

Gera SQL para uma expressão DELETE

VisitDistinct(DistinctExpression)

Gera SQL para uma cláusula DISTINCT () em uma invocação de função de agregação.

VisitExcept(ExceptExpression)

Gera SQL para uma operação de conjunto EXCEPT.

VisitExists(ExistsExpression)

Gera SQL para uma expressão EXISTS.

VisitExtension(Expression)

Um gerador SQL de consulta a ser obtido IRelationalCommand para determinado SelectExpression.

Esse tipo normalmente é usado por provedores de banco de dados (e outras extensões). Geralmente, ele não é usado no código do aplicativo.

VisitExtension(Expression)

Um gerador SQL de consulta a ser obtido IRelationalCommand para determinado SelectExpression.

Esse tipo normalmente é usado por provedores de banco de dados (e outras extensões). Geralmente, ele não é usado no código do aplicativo.

(Herdado de SqlExpressionVisitor)
VisitFromSql(FromSqlExpression)

Gera o SQL para uma consulta SQL fornecida pelo usuário.

VisitFullJoin(FullJoinExpression)

Gera o SQL para uma junção completa.

VisitIn(InExpression)

Gera SQL para uma expressão IN.

VisitInnerJoin(InnerJoinExpression)

Gera SQL para uma junção interna.

VisitIntersect(IntersectExpression)

Gera SQL para uma operação de conjunto INTERSECT.

VisitJsonScalar(JsonScalarExpression)

Gera SQL para uma expressão de pesquisa escalar JSON.

VisitLeftJoin(LeftJoinExpression)

Gera SQL para uma junção à esquerda.

VisitLike(LikeExpression)

Gera SQL para uma expressão LIKE.

VisitOrdering(OrderingExpression)

Gera SQL para uma única ordenação em uma cláusula SELECT ORDER BY.

VisitOuterApply(OuterApplyExpression)

Gera SQL para uma aplicação externa.

VisitProjection(ProjectionExpression)

Gera SQL para uma única projeção em uma expressão SELECT.

VisitRightJoin(RightJoinExpression)

Gera SQL para uma junção correta.

VisitRowNumber(RowNumberExpression)

Gera SQL para uma expressão de número de linha.

VisitRowValue(RowValueExpression)

Gera SQL para uma expressão de valor de linha.

VisitScalarSubquery(ScalarSubqueryExpression)

Gera SQL para uma subconsulta escalar.

VisitSelect(SelectExpression)

Gera SQL para uma expressão SELECT.

VisitSqlBinary(SqlBinaryExpression)

Gera SQL para uma expressão binária.

VisitSqlConstant(SqlConstantExpression)

Gera SQL para uma constante.

VisitSqlFragment(SqlFragmentExpression)

Gera SQL para um fragmento arbitrário.

VisitSqlFunction(SqlFunctionExpression)

Gera SQL para uma invocação de função.

VisitSqlParameter(SqlParameterExpression)

Gera SQL para um parâmetro.

VisitSqlUnary(SqlUnaryExpression)

Gera SQL para uma expressão unária.

VisitSubSelect(ScalarSubqueryExpression)

Um gerador SQL de consulta a ser obtido IRelationalCommand para determinado SelectExpression.

Esse tipo normalmente é usado por provedores de banco de dados (e outras extensões). Geralmente, ele não é usado no código do aplicativo.

VisitTable(TableExpression)

Gera SQL para uma coluna.

VisitTableValuedFunction(TableValuedFunctionExpression)

Gera SQL para uma invocação de função com valor de tabela.

VisitUnion(UnionExpression)

Gera o SQL para uma operação de conjunto UNION.

VisitUpdate(UpdateExpression)

Gera SQL para uma expressão UPDATE.

VisitValues(ValuesExpression)

Gera SQL para uma expressão VALUES.

Aplica-se a