다음을 통해 공유


QuerySqlGenerator 클래스

정의

지정된 SelectExpression에 대해 가져올 IRelationalCommand 쿼리 SQL 생성기입니다.

이 형식은 일반적으로 데이터베이스 공급자(및 기타 확장)에서 사용됩니다. 일반적으로 애플리케이션 코드에는 사용되지 않습니다.

public class QuerySqlGenerator : Microsoft.EntityFrameworkCore.Query.SqlExpressionVisitor
type QuerySqlGenerator = class
    inherit SqlExpressionVisitor
Public Class QuerySqlGenerator
Inherits SqlExpressionVisitor
상속

생성자

QuerySqlGenerator(QuerySqlGeneratorDependencies)

QuerySqlGenerator 클래스의 새 인스턴스를 만듭니다.

속성

AliasSeparator

기본 별칭 구분 기호입니다.

Dependencies

이 서비스에 대한 관계형 공급자별 종속성입니다.

Sql

현재 SQL 명령 작성기입니다.

메서드

CheckComposableSql(String)

지정된 SQL 문자열을 구성할 수 있는지 확인합니다. 즉, 더 큰 SQL 쿼리 내에서 하위 쿼리로 포함할 수 있습니다.

CheckComposableSqlTrimmed(ReadOnlySpan<Char>)

지정된 SQL 문자열을 구성할 수 있는지 확인합니다. 즉, 더 큰 SQL 쿼리 내에서 하위 쿼리로 포함할 수 있습니다. 제공된 sql 는 공백 및 주석에 대해 이미 잘립니다.

GenerateEmptyProjection(SelectExpression)

SelectExpression에 대한 빈 프로젝션을 생성합니다.

GenerateExists(ExistsExpression, Boolean)

EXISTS 식에 대한 SQL을 생성합니다.

GenerateIn(InExpression, Boolean)

IN 식에 대한 SQL을 생성합니다.

GenerateLike(LikeExpression, Boolean)

LIKE 식에 대한 SQL을 생성합니다.

GenerateLimitOffset(SelectExpression)

LIMIT를 생성합니다... 오프셋... 관계형 명령의 구문

GenerateOperator(SqlBinaryExpression)
사용되지 않음.

SQL 이진 작업에 대한 SQL 연산자를 생성합니다.

GenerateOrderings(SelectExpression)

관계형 명령에서 ORDER BY 절을 생성합니다.

GeneratePseudoFromClause()

의사 FROM 절을 생성합니다. 쿼리에 실제 FROM 절이 없는 경우 일부 공급자가 필요합니다.

GenerateRootCommand(Expression)

지정된 최상위 쿼리 식에 대한 명령을 생성합니다. 이렇게 하면 최상위 수준일 때 식에 다른 처리가 필요한 경우 공급자가 가로챌 수 있습니다.

GenerateSetOperation(SetOperationBase)

관계형 명령에서 set 연산을 생성합니다.

GenerateSetOperationOperand(SetOperationBase, SelectExpression)

관계형 명령에서 지정된 집합 작업에 대한 피연산자를 생성합니다.

GenerateTagsHeaderComment(ISet<String>)

태그에 대한 헤드 주석을 생성합니다.

GenerateTagsHeaderComment(SelectExpression)
사용되지 않음.

태그에 대한 헤드 주석을 생성합니다.

GenerateTop(SelectExpression)

관계형 명령에서 TOP 구문을 생성합니다.

GenerateValues(ValuesExpression)

VALUES 식을 생성합니다.

GetCommand(Expression)

쿼리 식에 대한 관계형 명령을 가져옵니다.

GetCommand(SelectExpression)

에 대한 관계형 명령을 가져옵니다 SelectExpression.

GetOperator(SqlBinaryExpression)

SQL 이진 작업에 대한 SQL 연산자를 가져옵니다.

RequiresParentheses(SqlExpression, SqlExpression)

외부 SQL 식에 대한 SQL을 생성할 때 내부 SQL 식을 괄호 안에 배치해야 하는지 여부를 나타내는 부울 값을 반환합니다.

TryGenerateWithoutWrappingSelect(SelectExpression)

가능한 경우 는 줄 바꿈 SELECT 없이 제공된 selectExpression 에 포함된 식을 생성합니다. SELECT에서 래핑할 필요 없이 최상위 문으로 표시될 수 있는 SET 작업 및 VALUES에 대해 이 작업을 수행할 수 있습니다.

TryGetOperatorInfo(SqlExpression, Int32, Boolean)

지정된 expression의 우선 순위와 연관성을 나타내는 숫자 값을 반환합니다. 이러한 컨트롤은 식 주위에 괄호가 생성되는지 여부를 제어합니다.

VisitAtTimeZone(AtTimeZoneExpression)

sql "표준 시간대" 식의 자식을 방문합니다.

VisitAtTimeZone(AtTimeZoneExpression)

sql "표준 시간대" 식의 자식을 방문합니다.

(다음에서 상속됨 SqlExpressionVisitor)
VisitCase(CaseExpression)

사례 식의 자식을 방문합니다.

VisitCollate(CollateExpression)

데이터 정렬 식의 자식을 방문합니다.

VisitCollate(CollateExpression)

데이터 정렬 식의 자식을 방문합니다.

(다음에서 상속됨 SqlExpressionVisitor)
VisitColumn(ColumnExpression)

열 식의 자식을 방문합니다.

VisitCrossApply(CrossApplyExpression)

크로스 적용 식의 자식을 방문합니다.

VisitCrossJoin(CrossJoinExpression)

크로스 조인 식의 자식을 방문합니다.

VisitDelete(DeleteExpression)

삭제 식의 자식을 방문합니다.

VisitDelete(DeleteExpression)

삭제 식의 자식을 방문합니다.

(다음에서 상속됨 SqlExpressionVisitor)
VisitDistinct(DistinctExpression)

고유 식의 자식을 방문합니다.

VisitDistinct(DistinctExpression)

고유 식의 자식을 방문합니다.

(다음에서 상속됨 SqlExpressionVisitor)
VisitExcept(ExceptExpression)

제외 식의 자식을 방문합니다.

VisitExists(ExistsExpression)

exists 식의 자식을 방문합니다.

VisitExtension(Expression)

지정된 SelectExpression에 대해 가져올 IRelationalCommand 쿼리 SQL 생성기입니다.

이 형식은 일반적으로 데이터베이스 공급자(및 기타 확장)에서 사용됩니다. 일반적으로 애플리케이션 코드에는 사용되지 않습니다.

(다음에서 상속됨 SqlExpressionVisitor)
VisitFromSql(FromSqlExpression)

sql 식에서 의 자식을 방문합니다.

VisitIn(InExpression)

식에서 의 자식을 방문합니다.

VisitInnerJoin(InnerJoinExpression)

내부 조인 식의 자식을 방문합니다.

VisitIntersect(IntersectExpression)

교차 식의 자식을 방문합니다.

VisitJsonScalar(JsonScalarExpression)

JSON 스칼라 식의 자식을 방문합니다.

VisitJsonScalar(JsonScalarExpression)

JSON 스칼라 식의 자식을 방문합니다.

(다음에서 상속됨 SqlExpressionVisitor)
VisitLeftJoin(LeftJoinExpression)

왼쪽 조인 식의 자식을 방문합니다.

VisitLike(LikeExpression)

같은 식의 자식을 방문합니다.

VisitOrdering(OrderingExpression)

순서 지정 식의 자식을 방문합니다.

VisitOuterApply(OuterApplyExpression)

외부 적용 식의 자식을 방문합니다.

VisitProjection(ProjectionExpression)

프로젝션 식의 자식을 방문합니다.

VisitRowNumber(RowNumberExpression)

행 번호 식의 자식을 방문합니다.

VisitRowValue(RowValueExpression)

행 값 식의 자식을 방문합니다.

VisitRowValue(RowValueExpression)

행 값 식의 자식을 방문합니다.

(다음에서 상속됨 SqlExpressionVisitor)
VisitScalarSubquery(ScalarSubqueryExpression)

스칼라 하위 쿼리 식의 자식을 방문합니다.

VisitScalarSubquery(ScalarSubqueryExpression)

스칼라 하위 쿼리 식의 자식을 방문합니다.

(다음에서 상속됨 SqlExpressionVisitor)
VisitSelect(SelectExpression)

select 식의 자식을 방문합니다.

VisitSqlBinary(SqlBinaryExpression)

sql 이진 식의 자식을 방문합니다.

VisitSqlConstant(SqlConstantExpression)

sql 상수 식의 자식을 방문합니다.

VisitSqlFragment(SqlFragmentExpression)

sql 조각 식의 자식을 방문합니다.

VisitSqlFunction(SqlFunctionExpression)

sql 함수 식의 자식을 방문합니다.

VisitSqlParameter(SqlParameterExpression)

sql 매개 변수 식의 자식을 방문합니다.

VisitSqlUnary(SqlUnaryExpression)

sql 단항 식의 자식을 방문합니다.

VisitSubSelect(ScalarSubqueryExpression)

지정된 SelectExpression에 대해 가져올 IRelationalCommand 쿼리 SQL 생성기입니다.

이 형식은 일반적으로 데이터베이스 공급자(및 기타 확장)에서 사용됩니다. 일반적으로 애플리케이션 코드에는 사용되지 않습니다.

VisitSubSelect(ScalarSubqueryExpression)

지정된 SelectExpression에 대해 가져올 IRelationalCommand 쿼리 SQL 생성기입니다.

이 형식은 일반적으로 데이터베이스 공급자(및 기타 확장)에서 사용됩니다. 일반적으로 애플리케이션 코드에는 사용되지 않습니다.

(다음에서 상속됨 SqlExpressionVisitor)
VisitTable(TableExpression)

테이블 식의 자식을 방문합니다.

VisitTableValuedFunction(TableValuedFunctionExpression)

테이블 반환 함수 식의 자식을 방문합니다.

VisitTableValuedFunction(TableValuedFunctionExpression)

테이블 반환 함수 식의 자식을 방문합니다.

(다음에서 상속됨 SqlExpressionVisitor)
VisitUnion(UnionExpression)

공용 구조체 식의 자식을 방문합니다.

VisitUpdate(UpdateExpression)

업데이트 식의 자식을 방문합니다.

VisitUpdate(UpdateExpression)

업데이트 식의 자식을 방문합니다.

(다음에서 상속됨 SqlExpressionVisitor)
VisitValues(ValuesExpression)

값 식의 자식을 방문합니다.

VisitValues(ValuesExpression)

값 식의 자식을 방문합니다.

(다음에서 상속됨 SqlExpressionVisitor)

적용 대상