Freigeben über


MigrationsSqlGenerator Klasse

Definition

Generiert die SQL in MigrationCommand -Objekten, die dann aus einer Liste von MigrationOperations ausgeführt oder skriptiert werden können.

public class MigrationsSqlGenerator : Microsoft.EntityFrameworkCore.Migrations.IMigrationsSqlGenerator
type MigrationsSqlGenerator = class
    interface IMigrationsSqlGenerator
Public Class MigrationsSqlGenerator
Implements IMigrationsSqlGenerator
Vererbung
MigrationsSqlGenerator
Abgeleitet
Implementiert

Hinweise

Diese Klasse wird in der Regel von Datenbankanbietern geerbt, um die SQL-Generierung anzupassen.

Die Dienstlebensdauer ist Scoped. Dies bedeutet, dass jeder DbContext instance seine eigene instance dieses Diensts verwendet. Die Implementierung kann von anderen Diensten abhängen, die mit einer beliebigen Lebensdauer registriert sind. Die Implementierung muss nicht threadsicher sein.

Weitere Informationen und Beispiele finden Sie unter Datenbankmigrationen .

Konstruktoren

MigrationsSqlGenerator(IRelationalCommandBuilderFactory, ISqlGenerationHelper, IRelationalTypeMapper, IRelationalAnnotationProvider)

Generiert die SQL in MigrationCommand -Objekten, die dann aus einer Liste von MigrationOperations ausgeführt oder skriptiert werden können.

MigrationsSqlGenerator(MigrationsSqlGeneratorDependencies)

Erstellt eine neue MigrationsSqlGenerator instance unter Verwendung der angegebenen Abhängigkeiten.

Eigenschaften

Annotations

Generiert die SQL in MigrationCommand -Objekten, die dann aus einer Liste von MigrationOperations ausgeführt oder skriptiert werden können.

Dependencies

Relationale anbieterspezifische Abhängigkeiten für diesen Dienst.

Options

Ruft die Optionen ab, die beim Generieren von Befehlen verwendet werden sollen, oder legt diese fest.

SqlGenerationHelper

Generiert die SQL in MigrationCommand -Objekten, die dann aus einer Liste von MigrationOperations ausgeführt oder skriptiert werden können.

SqlGenerator

Die IUpdateSqlGenerator.

TypeMapper

Generiert die SQL in MigrationCommand -Objekten, die dann aus einer Liste von MigrationOperations ausgeführt oder skriptiert werden können.

VersionComparer

Ruft einen Vergleich ab, der zum Vergleichen von zwei Produktversionen verwendet werden kann.

Methoden

CheckConstraint(AddCheckConstraintOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für eine Überprüfungseinschränkung eines AddCheckConstraintOperation.

CheckConstraint(CreateCheckConstraintOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für eine Überprüfungseinschränkung eines CreateCheckConstraintOperation.

ColumnDefinition(AddColumnOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für eine Spaltendefinition in einem AddColumnOperation.

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

Generiert ein SQL-Fragment für eine Spaltendefinition für die angegebenen Spaltenmetadaten.

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

Generiert ein SQL-Fragment für eine Spaltendefinition für die angegebenen Spaltenmetadaten.

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

Generiert ein SQL-Fragment für eine Spaltendefinition für die angegebenen Spaltenmetadaten.

ColumnList(String[])

Verkettet die angegebenen Spaltennamen in einer DelimitIdentifier(String) getrennten Liste.

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

Generiert ein SQL-Fragment für eine berechnete Spaltendefinition für die angegebenen Spaltenmetadaten.

CreateTableCheckConstraints(CreateTableOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für die Check-Einschränkungen eines CreateTableOperation.

CreateTableColumns(CreateTableOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für die Spaltendefinitionen in einem CreateTableOperation.

CreateTableConstraints(CreateTableOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für die Einschränkungen eines CreateTableOperation.

CreateTableForeignKeys(CreateTableOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für die Fremdschlüsseleinschränkungen eines CreateTableOperation.

CreateTablePrimaryKeyConstraint(CreateTableOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für die Primärschlüsseleinschränkung eines CreateTableOperation.

CreateTableUniqueConstraints(CreateTableOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für die eindeutigen Einschränkungen eines CreateTableOperation.

DefaultValue(Object, String, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für die Standardeinschränkung einer Spalte.

DefaultValue(Object, String, String, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für die Standardeinschränkung einer Spalte.

EndStatement(MigrationCommandListBuilder, Boolean)

Generiert ein SQL-Fragment zum Beenden des SQL-Befehls.

FindEntityTypes(IModel, String, String)
Veraltet..

Sucht nach allen IEntityTypes, die der angegebenen Tabelle zugeordnet sind.

FindProperty(IModel, String, String, String)
Veraltet..

Sucht nach einigen IProperty , die der angegebenen Spalte zugeordnet sind.

Wenn der gleichen Spalte mehrere Eigenschaften zugeordnet sind, wird die zurückgegebene Eigenschaft willkürlich ausgewählt. Die Modellvalidierung stellt sicher, dass alle Eigenschaften, die einer bestimmten Spalte zugeordnet sind, über eine konsistente Konfiguration verfügen.

ForeignKeyAction(ReferentialAction, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für die angegebene referenzielle Aktion.

ForeignKeyConstraint(AddForeignKeyOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für eine Fremdschlüsseleinschränkung eines AddForeignKeyOperation.

Generate(AddCheckConstraintOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene AddCheckConstraintOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(AddColumnOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene AddColumnOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(AddColumnOperation, IModel, MigrationCommandListBuilder, Boolean)

Erstellt Befehle für die angegebene AddColumnOperation , indem Aufrufe für die angegebene ausgeführt werden MigrationCommandListBuilder.

Generate(AddForeignKeyOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene AddForeignKeyOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(AddForeignKeyOperation, IModel, MigrationCommandListBuilder, Boolean)

Erstellt Befehle für die angegebene AddForeignKeyOperation , indem Aufrufe für die angegebene ausgeführt werden MigrationCommandListBuilder.

Generate(AddPrimaryKeyOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene AddPrimaryKeyOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(AddPrimaryKeyOperation, IModel, MigrationCommandListBuilder, Boolean)

Erstellt Befehle für die angegebene AddPrimaryKeyOperation , indem Aufrufe für die angegebene ausgeführt werden MigrationCommandListBuilder.

Generate(AddUniqueConstraintOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene AddUniqueConstraintOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(AlterColumnOperation, IModel, MigrationCommandListBuilder)

Kann von Datenbankanbietern überschrieben werden, um Befehle für die angegebene AlterColumnOperation zu erstellen, indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden.

Generate(AlterDatabaseOperation, IModel, MigrationCommandListBuilder)

Kann von Datenbankanbietern überschrieben werden, um Befehle für die angegebene AlterDatabaseOperation zu erstellen, indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden.

Generate(AlterSequenceOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene AlterSequenceOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(AlterTableOperation, IModel, MigrationCommandListBuilder)

Kann von Datenbankanbietern überschrieben werden, um Befehle für die angegebene AlterTableOperation zu erstellen, indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden.

Generate(CreateCheckConstraintOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene CreateCheckConstraintOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(CreateIndexOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene CreateIndexOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(CreateIndexOperation, IModel, MigrationCommandListBuilder, Boolean)

Erstellt Befehle für die angegebene CreateIndexOperation , indem Aufrufe für die angegebene ausgeführt werden MigrationCommandListBuilder.

Generate(CreateSequenceOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene CreateSequenceOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(CreateTableOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene CreateTableOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(CreateTableOperation, IModel, MigrationCommandListBuilder, Boolean)

Erstellt Befehle für die angegebene CreateTableOperation , indem Aufrufe für die angegebene ausgeführt werden MigrationCommandListBuilder.

Generate(DeleteDataOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene DeleteDataOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(DropCheckConstraintOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene DropCheckConstraintOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(DropColumnOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene DropColumnOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(DropColumnOperation, IModel, MigrationCommandListBuilder, Boolean)

Erstellt Befehle für die angegebene DropColumnOperation , indem Aufrufe für die angegebene ausgeführt werden MigrationCommandListBuilder.

Generate(DropForeignKeyOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene DropForeignKeyOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(DropForeignKeyOperation, IModel, MigrationCommandListBuilder, Boolean)

Erstellt Befehle für die angegebene DropForeignKeyOperation , indem Aufrufe für die angegebene ausgeführt werden MigrationCommandListBuilder.

Generate(DropIndexOperation, IModel, MigrationCommandListBuilder)

Kann von Datenbankanbietern überschrieben werden, um Befehle für die angegebene DropIndexOperation zu erstellen, indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden.

Beachten Sie, dass die Standardimplementierung dieser Methode auslöst NotImplementedException. Anbieter müssen überschreiben, wenn sie diese Art von Vorgang unterstützen sollen.

Generate(DropIndexOperation, IModel, MigrationCommandListBuilder, Boolean)

Kann von Datenbankanbietern überschrieben werden, um Befehle für die angegebene DropIndexOperation zu erstellen, indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden.

Generate(DropPrimaryKeyOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene DropPrimaryKeyOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(DropPrimaryKeyOperation, IModel, MigrationCommandListBuilder, Boolean)

Erstellt Befehle für die angegebene DropPrimaryKeyOperation , indem Aufrufe für die angegebene ausgeführt werden MigrationCommandListBuilder.

Generate(DropSchemaOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene DropSchemaOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(DropSequenceOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene DropSequenceOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(DropTableOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene DropTableOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(DropTableOperation, IModel, MigrationCommandListBuilder, Boolean)

Erstellt Befehle für die angegebene DropTableOperation , indem Aufrufe für die angegebene ausgeführt werden MigrationCommandListBuilder.

Generate(DropUniqueConstraintOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene DropUniqueConstraintOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(EnsureSchemaOperation, IModel, MigrationCommandListBuilder)

Kann von Datenbankanbietern überschrieben werden, um Befehle für die angegebene EnsureSchemaOperation zu erstellen, indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden.

Generate(InsertDataOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene InsertDataOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(InsertDataOperation, IModel, MigrationCommandListBuilder, Boolean)

Erstellt Befehle für die angegebene InsertDataOperation , indem Aufrufe für die angegebene ausgeführt werden MigrationCommandListBuilder.

Generate(IReadOnlyList<MigrationOperation>, IModel)

Generiert Befehle aus einer Liste von Vorgängen.

Generate(IReadOnlyList<MigrationOperation>, IModel, MigrationsSqlGenerationOptions)

Generiert Befehle aus einer Liste von Vorgängen.

Generate(MigrationOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene MigrationOperation , indem Aufrufe für die angegebene ausgeführt werden MigrationCommandListBuilder.

Generate(RenameColumnOperation, IModel, MigrationCommandListBuilder)

Kann von Datenbankanbietern überschrieben werden, um Befehle für die angegebene RenameColumnOperation zu erstellen, indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden.

Generate(RenameIndexOperation, IModel, MigrationCommandListBuilder)

Kann von Datenbankanbietern überschrieben werden, um Befehle für die angegebene RenameIndexOperation zu erstellen, indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden.

Generate(RenameSequenceOperation, IModel, MigrationCommandListBuilder)

Kann von Datenbankanbietern überschrieben werden, um Befehle für die angegebene RenameSequenceOperation zu erstellen, indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden.

Generate(RenameTableOperation, IModel, MigrationCommandListBuilder)

Kann von Datenbankanbietern überschrieben werden, um Befehle für die angegebene RenameTableOperation zu erstellen, indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden.

Generate(RestartSequenceOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene RestartSequenceOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(SqlOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene SqlOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

Generate(UpdateDataOperation, IModel, MigrationCommandListBuilder)

Erstellt Befehle für die angegebene UpdateDataOperation , indem Aufrufe für den angegebenen MigrationCommandListBuilderausgeführt werden, und beendet dann den endgültigen Befehl.

GenerateIndexColumnList(CreateIndexOperation, IModel, MigrationCommandListBuilder)

Gibt ein SQL-Fragment für die Spaltenliste eines Indexes aus einer zurück CreateIndexOperation.

GenerateModificationCommands(DeleteDataOperation, IModel)

Generiert die Befehle, die dem angegebenen Vorgang entsprechen.

GenerateModificationCommands(InsertDataOperation, IModel)

Generiert die Befehle, die dem angegebenen Vorgang entsprechen.

GenerateModificationCommands(UpdateDataOperation, IModel)

Generiert die Befehle, die dem angegebenen Vorgang entsprechen.

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

Ruft den Speicher-/Datenbanktyp einer Spalte unter Berücksichtigung der bereitgestellten Metadaten ab.

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

Ruft den Speicher-/Datenbanktyp einer Spalte unter Berücksichtigung der bereitgestellten Metadaten ab.

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

Ruft den Speicher-/Datenbanktyp einer Spalte unter Berücksichtigung der bereitgestellten Metadaten ab.

HasLegacyRenameOperations(IModel)

Überprüft, ob oder nicht RenameTableOperation , und RenameSequenceOperation verwendet das legacy-Verhalten, wenn der neue Name und das schema auf NULL festgelegt werden, wenn dies unverändert ist.

IndexOptions(CreateIndexOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für Extras (Filter, eingeschlossene Spalten, Optionen) eines Indexes aus einem CreateIndexOperation.

IndexTraits(MigrationOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für Merkmale eines Indexes aus , CreateIndexOperationAddPrimaryKeyOperationoder AddUniqueConstraintOperation.

IsOldColumnSupported(IModel)

Überprüft, ob AddColumnOperation die Übergabe der alten Spalte unterstützt wird, die nur in EF Core 1.1 hinzugefügt wurde.

PrimaryKeyConstraint(AddPrimaryKeyOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für eine Primärschlüsseleinschränkung eines AddPrimaryKeyOperation.

SequenceOptions(AlterSequenceOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment, das eine Sequenz in einem AlterSequenceOperationkonfiguriert.

SequenceOptions(CreateSequenceOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment, das eine Sequenz in einem CreateSequenceOperationkonfiguriert.

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

Generiert ein SQL-Fragment, das eine Sequenz mit den angegebenen Optionen konfiguriert.

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

Generiert ein SQL-Fragment, das eine Sequenz mit den angegebenen Optionen konfiguriert.

TryGetVersion(IModel, String)

Ruft die Produktversion ab, die zum Generieren der aktuellen Migration verwendet wird. Anbieter können dies verwenden, um die Kompatibilität mit Migrationen aufrechtzuerhalten, die mit früheren Versionen generiert wurden.

UniqueConstraint(AddUniqueConstraintOperation, IModel, MigrationCommandListBuilder)

Generiert ein SQL-Fragment für eine eindeutige Einschränkung eines AddUniqueConstraintOperation.

Gilt für: