共用方式為


MigrationsSqlGenerator 類別

定義

在 物件中 MigrationCommand 產生 SQL,然後可從 清單 MigrationOperation 執行或編寫腳本。

public class MigrationsSqlGenerator : Microsoft.EntityFrameworkCore.Migrations.IMigrationsSqlGenerator
type MigrationsSqlGenerator = class
    interface IMigrationsSqlGenerator
Public Class MigrationsSqlGenerator
Implements IMigrationsSqlGenerator
繼承
MigrationsSqlGenerator
衍生
實作

備註

這個類別通常是由資料庫提供者繼承,以自訂 SQL 產生。

服務存留期為 Scoped 。 這表示每個 DbContext 實例都會使用此服務自己的實例。 實作可能相依于任何存留期註冊的其他服務。 實作不需要安全線程。

如需詳細資訊和範例 ,請參閱資料庫移 轉。

建構函式

MigrationsSqlGenerator(IRelationalCommandBuilderFactory, ISqlGenerationHelper, IRelationalTypeMapper, IRelationalAnnotationProvider)

在 物件中 MigrationCommand 產生 SQL,然後可從 清單 MigrationOperation 執行或編寫腳本。

MigrationsSqlGenerator(MigrationsSqlGeneratorDependencies)

使用指定的相依性建立新的 MigrationsSqlGenerator 實例。

屬性

Annotations

在 物件中 MigrationCommand 產生 SQL,然後可從 清單 MigrationOperation 執行或編寫腳本。

Dependencies

此服務的關聯式提供者特定相依性。

Options

取得或設定產生命令時要使用的選項。

SqlGenerationHelper

在 物件中 MigrationCommand 產生 SQL,然後可從 清單 MigrationOperation 執行或編寫腳本。

SqlGenerator

IUpdateSqlGenerator

TypeMapper

在 物件中 MigrationCommand 產生 SQL,然後可從 清單 MigrationOperation 執行或編寫腳本。

VersionComparer

取得比較子,可用來比較兩個產品版本。

方法

CheckConstraint(AddCheckConstraintOperation, IModel, MigrationCommandListBuilder)

為 的檢查條件約束 AddCheckConstraintOperation 產生 SQL 片段。

CheckConstraint(CreateCheckConstraintOperation, IModel, MigrationCommandListBuilder)

為 的檢查條件約束 CreateCheckConstraintOperation 產生 SQL 片段。

ColumnDefinition(AddColumnOperation, IModel, MigrationCommandListBuilder)

為 中的資料 AddColumnOperation 行定義產生 SQL 片段。

ColumnDefinition(String, String, String, ColumnOperation, IModel, MigrationCommandListBuilder)

為指定資料行中繼資料的資料行定義產生 SQL 片段。

ColumnDefinition(String, String, String, Type, String, Nullable<Boolean>, Nullable<Int32>, Boolean, Boolean, Object, String, String, IAnnotatable, IModel, MigrationCommandListBuilder)

為指定資料行中繼資料的資料行定義產生 SQL 片段。

ColumnDefinition(String, String, String, Type, String, Nullable<Boolean>, Nullable<Int32>, Nullable<Boolean>, Boolean, Boolean, Object, String, String, IAnnotatable, IModel, MigrationCommandListBuilder)

為指定資料行中繼資料的資料行定義產生 SQL 片段。

ColumnList(String[])

將指定的資料行名稱串連到 DelimitIdentifier(String) 分隔清單中。

ComputedColumnDefinition(String, String, String, ColumnOperation, IModel, MigrationCommandListBuilder)

為指定的資料行中繼資料產生計算資料行定義的 SQL 片段。

CreateTableCheckConstraints(CreateTableOperation, IModel, MigrationCommandListBuilder)

為 的檢查條件約束 CreateTableOperation 產生 SQL 片段。

CreateTableColumns(CreateTableOperation, IModel, MigrationCommandListBuilder)

為 中的資料 CreateTableOperation 行定義產生 SQL 片段。

CreateTableConstraints(CreateTableOperation, IModel, MigrationCommandListBuilder)

為 的條件約束 CreateTableOperation 產生 SQL 片段。

CreateTableForeignKeys(CreateTableOperation, IModel, MigrationCommandListBuilder)

為 的 CreateTableOperation 外鍵條件約束產生 SQL 片段。

CreateTablePrimaryKeyConstraint(CreateTableOperation, IModel, MigrationCommandListBuilder)

為 的主 CreateTableOperation 鍵條件約束產生 SQL 片段。

CreateTableUniqueConstraints(CreateTableOperation, IModel, MigrationCommandListBuilder)

為 的唯一 CreateTableOperation 條件約束產生 SQL 片段。

DefaultValue(Object, String, MigrationCommandListBuilder)

為數據行的預設條件約束產生 SQL 片段。

DefaultValue(Object, String, String, MigrationCommandListBuilder)

為數據行的預設條件約束產生 SQL 片段。

EndStatement(MigrationCommandListBuilder, Boolean)

產生 SQL 片段以終止 SQL 命令。

FindEntityTypes(IModel, String, String)
已過時。.

尋找對應至指定資料表的所有 IEntityType

FindProperty(IModel, String, String, String)
已過時。.

尋找對應至指定資料行的一些 IProperty

如果多個屬性對應至相同的資料行,則傳回的屬性是任意選擇的屬性。 模型驗證程式可確保對應至指定資料行的所有屬性都有一致的設定。

ForeignKeyAction(ReferentialAction, MigrationCommandListBuilder)

為指定的引用動作產生 SQL 片段。

ForeignKeyConstraint(AddForeignKeyOperation, IModel, MigrationCommandListBuilder)

為 的 AddForeignKeyOperation 外鍵條件約束產生 SQL 片段。

Generate(AddCheckConstraintOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 AddCheckConstraintOperationMigrationCommandListBuilder 命令。

Generate(AddColumnOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 AddColumnOperationMigrationCommandListBuilder 命令。

Generate(AddColumnOperation, IModel, MigrationCommandListBuilder, Boolean)

在指定的 上呼叫 來建置所 MigrationCommandListBuilder 指定 AddColumnOperation 的 命令。

Generate(AddForeignKeyOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 AddForeignKeyOperationMigrationCommandListBuilder 命令。

Generate(AddForeignKeyOperation, IModel, MigrationCommandListBuilder, Boolean)

在指定的 上呼叫 來建置所 MigrationCommandListBuilder 指定 AddForeignKeyOperation 的 命令。

Generate(AddPrimaryKeyOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 AddPrimaryKeyOperationMigrationCommandListBuilder 命令。

Generate(AddPrimaryKeyOperation, IModel, MigrationCommandListBuilder, Boolean)

在指定的 上呼叫 來建置所 MigrationCommandListBuilder 指定 AddPrimaryKeyOperation 的 命令。

Generate(AddUniqueConstraintOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 AddUniqueConstraintOperationMigrationCommandListBuilder 命令。

Generate(AlterColumnOperation, IModel, MigrationCommandListBuilder)

資料庫提供者可以覆寫,藉由在指定的 上呼叫 來建置指定 AlterColumnOperationMigrationCommandListBuilder 之 的命令。

Generate(AlterDatabaseOperation, IModel, MigrationCommandListBuilder)

資料庫提供者可以覆寫,藉由在指定的 上呼叫 來建置指定 AlterDatabaseOperationMigrationCommandListBuilder 之 的命令。

Generate(AlterSequenceOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 AlterSequenceOperationMigrationCommandListBuilder 命令。

Generate(AlterTableOperation, IModel, MigrationCommandListBuilder)

資料庫提供者可以覆寫,藉由在指定的 上呼叫 來建置指定 AlterTableOperationMigrationCommandListBuilder 之 的命令。

Generate(CreateCheckConstraintOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 CreateCheckConstraintOperationMigrationCommandListBuilder 命令。

Generate(CreateIndexOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 CreateIndexOperationMigrationCommandListBuilder 命令。

Generate(CreateIndexOperation, IModel, MigrationCommandListBuilder, Boolean)

在指定的 上呼叫 來建置所 MigrationCommandListBuilder 指定 CreateIndexOperation 的 命令。

Generate(CreateSequenceOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 CreateSequenceOperationMigrationCommandListBuilder 命令。

Generate(CreateTableOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 CreateTableOperationMigrationCommandListBuilder 命令。

Generate(CreateTableOperation, IModel, MigrationCommandListBuilder, Boolean)

在指定的 上呼叫 來建置所 MigrationCommandListBuilder 指定 CreateTableOperation 的 命令。

Generate(DeleteDataOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 DeleteDataOperationMigrationCommandListBuilder 命令。

Generate(DropCheckConstraintOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 DropCheckConstraintOperationMigrationCommandListBuilder 命令。

Generate(DropColumnOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 DropColumnOperationMigrationCommandListBuilder 命令。

Generate(DropColumnOperation, IModel, MigrationCommandListBuilder, Boolean)

在指定的 上呼叫 來建置所 MigrationCommandListBuilder 指定 DropColumnOperation 的 命令。

Generate(DropForeignKeyOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 DropForeignKeyOperationMigrationCommandListBuilder 命令。

Generate(DropForeignKeyOperation, IModel, MigrationCommandListBuilder, Boolean)

在指定的 上呼叫 來建置所 MigrationCommandListBuilder 指定 DropForeignKeyOperation 的 命令。

Generate(DropIndexOperation, IModel, MigrationCommandListBuilder)

資料庫提供者可以覆寫,藉由在指定的 上呼叫 來建置指定 DropIndexOperationMigrationCommandListBuilder 之 的命令。

請注意,這個方法的預設實作會擲回 NotImplementedException 。 提供者必須覆寫它們是否支援這類作業。

Generate(DropIndexOperation, IModel, MigrationCommandListBuilder, Boolean)

資料庫提供者可以覆寫,藉由在指定的 上呼叫 來建置指定 DropIndexOperationMigrationCommandListBuilder 之 的命令。

Generate(DropPrimaryKeyOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 DropPrimaryKeyOperationMigrationCommandListBuilder 命令。

Generate(DropPrimaryKeyOperation, IModel, MigrationCommandListBuilder, Boolean)

在指定的 上呼叫 來建置所 MigrationCommandListBuilder 指定 DropPrimaryKeyOperation 的 命令。

Generate(DropSchemaOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 DropSchemaOperationMigrationCommandListBuilder 命令。

Generate(DropSequenceOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 DropSequenceOperationMigrationCommandListBuilder 命令。

Generate(DropTableOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 DropTableOperationMigrationCommandListBuilder 命令。

Generate(DropTableOperation, IModel, MigrationCommandListBuilder, Boolean)

在指定的 上呼叫 來建置所 MigrationCommandListBuilder 指定 DropTableOperation 的 命令。

Generate(DropUniqueConstraintOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 DropUniqueConstraintOperationMigrationCommandListBuilder 命令。

Generate(EnsureSchemaOperation, IModel, MigrationCommandListBuilder)

資料庫提供者可以覆寫,藉由在指定的 上呼叫 來建置指定 EnsureSchemaOperationMigrationCommandListBuilder 之 的命令。

Generate(InsertDataOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 InsertDataOperationMigrationCommandListBuilder 命令。

Generate(InsertDataOperation, IModel, MigrationCommandListBuilder, Boolean)

在指定的 上呼叫 來建置所 MigrationCommandListBuilder 指定 InsertDataOperation 的 命令。

Generate(IReadOnlyList<MigrationOperation>, IModel)

從作業清單產生命令。

Generate(IReadOnlyList<MigrationOperation>, IModel, MigrationsSqlGenerationOptions)

從作業清單產生命令。

Generate(MigrationOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 來建置所 MigrationCommandListBuilder 指定 MigrationOperation 的 命令。

Generate(RenameColumnOperation, IModel, MigrationCommandListBuilder)

資料庫提供者可以覆寫,藉由在指定的 上呼叫 來建置指定 RenameColumnOperationMigrationCommandListBuilder 之 的命令。

Generate(RenameIndexOperation, IModel, MigrationCommandListBuilder)

資料庫提供者可以覆寫,藉由在指定的 上呼叫 來建置指定 RenameIndexOperationMigrationCommandListBuilder 之 的命令。

Generate(RenameSequenceOperation, IModel, MigrationCommandListBuilder)

資料庫提供者可以覆寫,藉由在指定的 上呼叫 來建置指定 RenameSequenceOperationMigrationCommandListBuilder 之 的命令。

Generate(RenameTableOperation, IModel, MigrationCommandListBuilder)

資料庫提供者可以覆寫,藉由在指定的 上呼叫 來建置指定 RenameTableOperationMigrationCommandListBuilder 之 的命令。

Generate(RestartSequenceOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 RestartSequenceOperationMigrationCommandListBuilder 命令。

Generate(SqlOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 SqlOperationMigrationCommandListBuilder 命令。

Generate(UpdateDataOperation, IModel, MigrationCommandListBuilder)

在指定的 上呼叫 ,然後終止最終命令,以建置指定的 UpdateDataOperationMigrationCommandListBuilder 命令。

GenerateIndexColumnList(CreateIndexOperation, IModel, MigrationCommandListBuilder)

CreateIndexOperation 傳回索引資料行清單的 SQL 片段。

GenerateModificationCommands(DeleteDataOperation, IModel)

產生對應至指定作業的命令。

GenerateModificationCommands(InsertDataOperation, IModel)

產生對應至指定作業的命令。

GenerateModificationCommands(UpdateDataOperation, IModel)

產生對應至指定作業的命令。

GetColumnType(String, String, String, ColumnOperation, IModel)

取得提供之中繼資料的資料行存放/資料庫類型。

GetColumnType(String, String, String, Type, Nullable<Boolean>, Nullable<Int32>, Boolean, IModel)

取得提供之中繼資料的資料行存放/資料庫類型。

GetColumnType(String, String, String, Type, Nullable<Boolean>, Nullable<Int32>, Nullable<Boolean>, Boolean, IModel)

取得提供之中繼資料的資料行存放/資料庫類型。

HasLegacyRenameOperations(IModel)

檢查新 RenameSequenceOperation 名稱和架構在未變更時是否 RenameTableOperation 使用舊版行為,將新名稱和架構設定為 Null。

IndexOptions(CreateIndexOperation, IModel, MigrationCommandListBuilder)

針對 (篩選、包含的資料行、索引 CreateIndexOperation 的選項) 產生 SQL 片段。

IndexTraits(MigrationOperation, IModel, MigrationCommandListBuilder)

CreateIndexOperationAddPrimaryKeyOperationAddUniqueConstraintOperation 產生索引特性的 SQL 片段。

IsOldColumnSupported(IModel)

檢查是否 AddColumnOperation 支援傳入舊資料行,這只在 EF Core 1.1 中新增。

PrimaryKeyConstraint(AddPrimaryKeyOperation, IModel, MigrationCommandListBuilder)

為 的主 AddPrimaryKeyOperation 鍵條件約束產生 SQL 片段。

SequenceOptions(AlterSequenceOperation, IModel, MigrationCommandListBuilder)

在 中產生設定序列的 AlterSequenceOperation SQL 片段。

SequenceOptions(CreateSequenceOperation, IModel, MigrationCommandListBuilder)

在 中產生設定序列的 CreateSequenceOperation SQL 片段。

SequenceOptions(String, String, Int32, Nullable<Int64>, Nullable<Int64>, Boolean, IModel, MigrationCommandListBuilder)

使用指定的選項產生設定序列的 SQL 片段。

SequenceOptions(String, String, SequenceOperation, IModel, MigrationCommandListBuilder)

使用指定的選項產生設定序列的 SQL 片段。

TryGetVersion(IModel, String)

取得用來產生目前移轉的產品版本。 提供者可以使用此功能來保留與使用舊版所產生的移轉相容性。

UniqueConstraint(AddUniqueConstraintOperation, IModel, MigrationCommandListBuilder)

為 的唯一條件約束 AddUniqueConstraintOperation 產生 SQL 片段。

適用於