SqlServerMigrationSqlGenerator 类

定义

提供程序,用于将提供程序不可知的迁移操作转换为可针对 Microsoft SQL Server 数据库运行的 SQL 命令。

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling")]
public class SqlServerMigrationSqlGenerator : System.Data.Entity.Migrations.Sql.MigrationSqlGenerator
type SqlServerMigrationSqlGenerator = class
    inherit MigrationSqlGenerator
Public Class SqlServerMigrationSqlGenerator
Inherits MigrationSqlGenerator
继承
SqlServerMigrationSqlGenerator
属性

构造函数

SqlServerMigrationSqlGenerator()

提供程序,用于将提供程序不可知的迁移操作转换为可针对 Microsoft SQL Server 数据库运行的 SQL 命令。

属性

GuidColumnDefault

返回在迁移中未显式指定默认值时用于存储生成的 GUID 列的列默认值。 返回本地 SQL Server 2005 及更高版本的 newsequentialid () 。 返回SQL Azure的 newid () 。

ProviderManifest

获取或设置提供程序清单。

(继承自 MigrationSqlGenerator)

方法

BuildColumnType(ColumnModel)

生成 SQL 以指定列的数据类型。 此方法仅生成实际类型,而不是用于创建列的 SQL。

BuildStoreTypeUsage(String, PropertyModel)

使用指定 中的分面propertyModel为指定的 storeTypeName 生成存储类型用法。

(继承自 MigrationSqlGenerator)
CreateConnection()

为当前提供程序创建空连接。 允许派生的提供程序使用非 SqlConnection的连接。

DropDefaultConstraint(String, String, IndentedTextWriter)

调用此方法可生成 SQL,该 SQL 将尝试删除创建列时创建的默认约束。 此方法通常由替代列的创建或更改的代码调用。

Generate(AddColumnOperation)

AddColumnOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(AddForeignKeyOperation)

AddForeignKeyOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(AddPrimaryKeyOperation)

AddPrimaryKeyOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(AlterColumnOperation)

AlterColumnOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(AlterProcedureOperation)

生成指定的更改过程操作。

Generate(AlterTableOperation)

重写此方法以在表的定义或其属性发生更改时生成 SQL。 此方法的默认实现不执行任何操作。

Generate(Boolean)

生成 SQL 以指定对列设置的常量布尔默认值。 此方法仅生成实际值,而不生成用于设置默认值的 SQL。

Generate(Byte[])

生成 SQL 以指定对列设置的常量 byte[] 默认值。 此方法仅生成实际值,而不生成用于设置默认值的 SQL。

Generate(ColumnModel, IndentedTextWriter)

为给定列模型生成 SQL。 此方法由处理列的其他方法调用,可以重写以更改生成的 SQL。

Generate(CreateIndexOperation)

CreateIndexOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(CreateProcedureOperation)

生成指定的创建过程操作。

Generate(CreateTableOperation)

CreateTableOperation生成 SQL。 此方法的不同之处在于 WriteCreateTable(CreateTableOperation) ,如果目标数据库架构尚不存在,它将创建该架构。 应使用 Statement 方法添加生成的 SQL。

Generate(DateTime)

生成 SQL 以指定对列设置的常量 DateTime 默认值。 此方法仅生成实际值,而不生成用于设置默认值的 SQL。

Generate(DateTimeOffset)

生成 SQL 以指定对列设置的常量 DateTimeOffset 默认值。 此方法仅生成实际值,而不生成用于设置默认值的 SQL。

Generate(DbGeography)

生成 SQL 以指定对列设置的常量异地默认值。 此方法仅生成实际值,而不生成用于设置默认值的 SQL。

Generate(DbGeometry)

生成 SQL 以指定对列设置的常量几何默认值。 此方法仅生成实际值,而不生成用于设置默认值的 SQL。

Generate(DropColumnOperation)

DropColumnOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(DropForeignKeyOperation)

DropForeignKeyOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(DropIndexOperation)

DropIndexOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(DropPrimaryKeyOperation)

DropPrimaryKeyOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(DropProcedureOperation)

生成指定的放置过程操作。

Generate(DropTableOperation)

DropTableOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(Guid)

生成 SQL 以指定在列上设置的常量 Guid 默认值。 此方法仅生成实际值,而不生成用于设置默认值的 SQL。

Generate(HistoryOperation)

HistoryOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(IEnumerable<MigrationOperation>, String)

将一组迁移操作转换为 Microsoft SQL Server特定的 SQL。

Generate(MigrationOperation)

MigrationOperation生成 SQL。 允许派生提供程序处理其他操作类型。 应使用 Statement 方法添加生成的 SQL。

Generate(MoveProcedureOperation)

生成指定的移动过程操作。

Generate(MoveTableOperation)

MoveTableOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(Object)

生成 SQL 以指定对列设置的常量默认值。 此方法仅生成实际值,而不生成用于设置默认值的 SQL。

Generate(RenameColumnOperation)

RenameColumnOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(RenameIndexOperation)

RenameIndexOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(RenameProcedureOperation)

生成指定的重命名过程操作。

Generate(RenameTableOperation)

RenameTableOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

Generate(SqlOperation)

SqlOperation生成 SQL。 应使用语句或 StatementBatch 方法添加生成的 SQL。

Generate(String)

生成 SQL 以指定对列设置的常量字符串默认值。 此方法仅生成实际值,而不生成用于设置默认值的 SQL。

Generate(TimeSpan)

生成 SQL 以指定对列设置的常量 TimeSpan 默认值。 此方法仅生成实际值,而不生成用于设置默认值的 SQL。

Generate(UpdateDatabaseOperation)

生成表示应用一系列迁移的指定更新数据库操作。 生成的脚本是幂等的,这意味着它包含条件逻辑,用于检查是否已应用单个迁移,并且仅应用挂起的迁移。

GenerateCreateSchema(String)

生成 SQL 以创建数据库架构。 应使用 Statement 方法添加生成的 SQL。

GenerateMakeSystemTable(CreateTableOperation, IndentedTextWriter)

生成 SQL 以将表标记为系统表。 应使用 Statement 方法添加生成的 SQL。

GenerateProcedureBody(ICollection<DbModificationCommandTree>, String, String)

为存储过程生成 SQL 正文。

IsPermissionDeniedError(Exception)

确定提供程序特定的异常是否对应于数据库级权限被拒绝错误。

Name(String)

生成带引号的名称。 提供的名称可能包含架构,也可能不包含架构。

Quote(String)

引用SQL Server的标识符。

Statement(IndentedTextWriter, String)

添加要对数据库执行的新 语句。

Statement(String, Boolean, String)

添加要对数据库执行的新 语句。

StatementBatch(String, Boolean)

将 sql 字符串分解为一个或多个语句,根据需要处理 T-SQL 实用工具语句。

WriteCreateTable(CreateTableOperation)

CreateTableOperation生成 SQL。 应使用 Statement 方法添加生成的 SQL。

WriteCreateTable(CreateTableOperation, IndentedTextWriter)

将 CREATE TABLE SQL 写入目标编写器。

Writer()

获取可用于生成 SQL 的新 IndentedTextWriter 。 这只是用于创建编写器的帮助器方法。 写入编写器不会导致 SQL 注册执行。 必须将生成的 SQL 传递给 Statement 方法。

适用于