protected override void Generate(RenameColumnOperation operation, IModel model, SqlBatchBuilder builder)
        {
            Check.NotNull(operation, nameof(operation));
            Check.NotNull(builder, nameof(builder));

            GenerateRename(
                _sql.EscapeLiteral(operation.Table) + "." + _sql.EscapeLiteral(operation.Name),
                operation.Schema,
                operation.NewName,
                "COLUMN",
                builder);
        }
        public virtual MigrationOperation GetDeleteOperation(string migrationId)
        {
            Check.NotEmpty(migrationId, nameof(migrationId));

            return(new SqlOperation
            {
                Sql = new StringBuilder()
                      .AppendLine("DELETE FROM [dbo].[__MigrationHistory]")
                      .Append("WHERE [MigrationId] = '").Append(_sql.EscapeLiteral(migrationId))
                      .Append("' AND [ContextKey] = '").Append(_sql.EscapeLiteral(_contextType.FullName))
                      .AppendLine("';")
                      .ToString()
            });
        }