TSqlModel 클래스

정의

SQL Server 데이터베이스 스키마의 모델을 나타냅니다.

public sealed class TSqlModel : IDisposable
type TSqlModel = class
    interface IDisposable
Public NotInheritable Class TSqlModel
Implements IDisposable
상속
TSqlModel
구현

생성자

Name Description
TSqlModel(SqlServerVersion, TSqlModelOptions)

특정 모델을 대상으로 하는 빈 모델을 만듭니다. SqlServerVersion

TSqlModel(String, DacSchemaModelStorageType, CancellationToken)

또는 BacPackage.에서 DacPackage 모델을 로드합니다.

이는 을 제외한 모든 항목에 대한 기본값을 사용하여 호출 LoadFromDacpac(String, ModelLoadOptions) 하는 modelStorageType것과 같습니다.

TSqlModel(String, DacSchemaModelStorageType)

또는 BacPackage.에서 DacPackage 모델을 로드합니다.

이는 을 제외한 모든 항목에 대한 기본값을 사용하여 호출 LoadFromDacpac(String, ModelLoadOptions) 하는 modelStorageType것과 같습니다.

TSqlModel(String)

또는 BacPackage.에서 DacPackage 모델을 로드합니다.

이는 기본값을 사용하여 호출하는 LoadFromDacpac(String, ModelLoadOptions) 것과 같습니다.

속성

Name Description
CollationComparer

문자열과 ObjectIdentifierTSqlModel데이터 정렬을 사용하여 비교할 수 있는 비교자입니다. 비교는 예상 비교 결과와 일치하기 때문에 모델의 개체를 비교할 때 매우 유용할 수 SQL Server

DisplayServices

모델의 개체에 DisplayServices 대한 표시 속성 생성을 지원하는 값을 가져옵니다.

EngineVersion

모델이 대상으로 하는 특정 엔진 버전입니다.

온-프레미스 플랫폼의 경우 엔진 버전이 9인 경우 Sql90SqlServerVersion 일치합니다.

Microsoft Azure SQL Database 유효한 최소 버전은 11이고 엔진 버전은 모델에서 지원되는 기능에 영향을 미칩니다.

IsScriptBacked

스크립트에서 백업하는 모델인가요? 이 경우 범위의 UserDefined 개체에는 원본 이름 및 정보를 포함한 원본 위치 정보가 포함됩니다. 이는 .의 사용과 같은 시나리오에 중요합니다 CodeAnalysisService.

TSqlModel 생성은 기본적으로 스크립트 지원됩니다. Dacpac에서 로드된 모델은 옵션을 사용하도록 설정한 경우에만 LoadAsScriptBackedModel scipt 지원됩니다. 스크립트 기반 모델을 만드는 작업은 Dacpac에서 로드된 표준 모델을 사용하는 것보다 오래 걸립니다.

Version

모델이 대상으로 하는 특정 SQL Server 릴리스입니다.

메서드

Name Description
AddObjects(String, TSqlObjectOptions)

TSql 스크립트 문자열의 내용과 개체에 정의된 TSqlObjectOptions 추가 메타데이터를 기반으로 모델에 개체를 추가합니다. 스크립트는 유효한 TSql DDL 문으로 구성되어야 합니다.

이 메서드를 사용하여 추가된 개체는 업데이트/삭제를 위해 개체를 추가할 때 스크립트 이름을 지정해야 하므로 나중에 업데이트하거나 삭제할 수 없습니다. 이 요구 사항인 경우 대신 메서드를 AddOrUpdateObjects(String, String, TSqlObjectOptions) 사용합니다.

AddObjects(String)

TSql 스크립트 문자열의 내용을 기반으로 모델에 개체를 추가합니다. 스크립트는 유효한 TSql DDL 문으로 구성되어야 합니다.

이 메서드를 사용하여 추가된 개체는 업데이트/삭제를 위해 개체를 추가할 때 스크립트 이름을 지정해야 하므로 나중에 업데이트하거나 삭제할 수 없습니다. 이 요구 사항인 경우 대신 메서드를 AddOrUpdateObjects(String, String, TSqlObjectOptions) 사용합니다.

AddObjects(TSqlScript, TSqlObjectOptions)

개체의 TSqlScript 내용에 따라 모델에 개체를 추가하고 개체에 정의된 TSqlObjectOptions 추가 메타데이터를 추가합니다. 스크립트는 구문 분석 오류 없이 유효한 TSql이어야 합니다.

이 메서드를 사용하여 추가된 개체는 업데이트/삭제를 위해 개체를 추가할 때 스크립트 이름을 지정해야 하므로 나중에 업데이트하거나 삭제할 수 없습니다. 이 요구 사항인 경우 대신 메서드를 AddOrUpdateObjects(TSqlScript, String, TSqlObjectOptions) 사용합니다.

AddObjects(TSqlScript)

개체의 내용에 따라 모델에 개체를 추가합니다 TSqlScript . 스크립트는 구문 분석 오류가 없는 유효한 TSql이어야 합니다.

이 메서드를 사용하여 추가된 개체는 업데이트/삭제를 위해 개체를 추가할 때 스크립트 이름을 지정해야 하므로 나중에 업데이트하거나 삭제할 수 없습니다. 이 요구 사항인 경우 대신 메서드를 AddOrUpdateObjects(TSqlScript, String, TSqlObjectOptions) 사용합니다.

AddOrUpdateObjects(String, String, TSqlObjectOptions)

에 정의된 개체를 사용하여 지정된 sourceName 개체에 대해 정의된 inputScript개체를 추가하거나 업데이트합니다. 이전에 동일한 sourceName 개체를 추가한 경우 이러한 개체가 완전히 대체됩니다. 개체 정의는 TSql 스크립트 문자열의 내용과 개체에 의해 정의된 추가 메타데이터를 TSqlObjectOptions 기반으로 합니다. 스크립트는 유효한 TSql DDL 문으로 구성되어야 합니다.

AddOrUpdateObjects(TSqlScript, String, TSqlObjectOptions)

에 정의된 개체를 사용하여 지정된 sourceName 개체에 대해 정의된 inputScript개체를 추가하거나 업데이트합니다. 이전에 동일한 sourceName 개체를 추가한 경우 이러한 개체가 완전히 대체됩니다. 개체 정의는 개체의 TSqlScript 내용과 개체에 정의된 추가 메타데이터를 TSqlObjectOptions 기반으로 합니다. 스크립트는 유효한 TSql DDL 문으로 구성되어야 합니다.

CheckVersionCompatibility(SqlServerVersion, CancellationToken)

모델의 유효성을 검사하여 대상 버전의 SQL Server 또는 Azure SQL Database 호환되지 않는 요소가 포함되어 있는지 확인하고 오류 또는 경고를 반환합니다.

ConvertToScriptedObject(TSqlObject, String)

모델의 특정 최상위 개체를 스크립트된 자체 표현으로 변환합니다. 이 기능은 데이터베이스 원본 모델에서 시작하고 호출자가 이 개체의 내용을 수정하려고 할 때 유용합니다.

CopyModelOptions()

모델용을 DatabaseOptions 개체에 TSqlModelOptions 복사합니다. 새 모델을 만들 때 모델에 대한 옵션을 복제하려는 경우에 유용합니다.

DeleteObjects(String)

지정된 개체를 사용하여 모델에 추가된 모든 개체를 삭제합니다 sourceName.

Dispose()

개체에서 사용하는 모든 리소스를 해제합니다 TSqlModel .

GetModelErrors()

모델에 있는 모든 DacModelErrors를 반환합니다.

GetObject(ModelTypeClass, ObjectIdentifier, DacQueryScopes)

지정된 및 .의 s를 objectType 반환TSqlObject합니다id. 이 메서드에서 최상위 수준 ModelTypeClass 형식만 지원됩니다. 매개 변수는 objectType 메서드에서 TopLevelTypes 반환된 형식에 있어야 합니다. 그렇지 않으면 호출이 실패합니다.

GetObjects(DacQueryScopes, ModelTypeClass[])

의 목록과 일치하는 모든 TSqlObject값을 반환합니다 typeFilters. 이 메서드에서는 최상위 ModelTypeClass 형식만 지원됩니다. 매개 변수의 typeFilters 모든 형식이 해당 형식에 TopLevelTypes 있어야 합니다. 그렇지 않으면 호출이 실패합니다.

GetObjects(ModelTypeClass, ObjectIdentifier, DacQueryScopes)

및 와 일치하는 모든 TSqlObjects를 반환합니다 ModelTypeClassObjectIdentifier. 이 메서드에서 최상위 수준 ModelTypeClass 형식만 지원됩니다. 매개 변수는 objectType 메서드에서 TopLevelTypes 반환된 형식에 있어야 합니다. 그렇지 않으면 호출이 실패합니다.

GetObjects(String, ModelTypeClass[])

매개 변수로 지정된 s로 필터링된 ModelTypeClass지정된 sourceName 문서의 모든 TSqlObjects를 typeFilters 반환합니다.

LoadFromDacpac(Stream, ModelLoadOptions, CancellationToken)

지정된 스토리지의 종류와 스크립트 지원 모델을 로드할지 여부를 구성하기 위해 지정된 options 모델에서 DacPackageBacPackage 모델을 로드합니다.

LoadFromDacpac(Stream, ModelLoadOptions)

지정된 스토리지의 종류와 스크립트 지원 모델을 로드할지 여부를 구성하기 위해 지정된 options 모델에서 DacPackageBacPackage 모델을 로드합니다.

LoadFromDacpac(String, ModelLoadOptions, CancellationToken)

지정된 스토리지의 종류와 스크립트 지원 모델을 로드할지 여부를 구성하기 위해 지정된 options 모델에서 DacPackageBacPackage 모델을 로드합니다.

LoadFromDacpac(String, ModelLoadOptions)

지정된 스토리지의 종류와 스크립트 지원 모델을 로드할지 여부를 구성하기 위해 지정된 options 모델에서 DacPackageBacPackage 모델을 로드합니다.

LoadFromDatabase(String, ModelExtractOptions, Nullable<CancellationToken>)

지정된 을 사용하여 데이터베이스에서 모델을 로드합니다 options.

LoadFromDatabase(String, SecureString, ModelExtractOptions, Nullable<CancellationToken>)

지정된 을 사용하여 데이터베이스에서 모델을 로드합니다 options.

LoadFromDatabaseWithAuthProvider(String, IUniversalAuthProvider, ModelExtractOptions, Nullable<CancellationToken>)

지정된 을 사용하여 데이터베이스에서 모델을 로드합니다 options.

Validate()

모델의 유효성을 검사하고 오류/경고가 있는 메시지 목록을 반환합니다.

적용 대상