public override void Generate(RenameSequenceOperation operation, IModel model, SqlBatchBuilder builder) { Check.NotNull(operation, nameof(operation)); Check.NotNull(builder, nameof(builder)); var separate = false; var name = operation.Name; if (operation.NewName != null) { var qualifiedName = new StringBuilder(); if (operation.Schema != null) { qualifiedName .Append(operation.Schema) .Append("."); } qualifiedName.Append(operation.Name); Rename(qualifiedName.ToString(), operation.NewName, builder); separate = true; name = operation.NewName; } if (operation.NewSchema != null) { if (separate) { builder.AppendLine(_sql.BatchCommandSeparator); } Transfer(operation.NewSchema, operation.Schema, name, builder); } }
protected override void Generate(RenameSequenceOperation operation, IModel model, RelationalCommandListBuilder builder) { Check.NotNull(operation, nameof(operation)); Check.NotNull(builder, nameof(builder)); var separate = false; var name = operation.Name; if (operation.NewName != null) { Rename(operation.Schema, operation.Name, operation.NewName, "SEQUENCE", builder); separate = true; name = operation.NewName; } if (operation.NewSchema != null) { if (separate) { builder.AppendLine(SqlGenerationHelper.StatementTerminator); } Transfer(operation.NewSchema, operation.Schema, name, "SEQUENCE", builder); } }
protected override void Generate(RenameSequenceOperation operation, IModel model, MigrationCommandListBuilder builder) { Check.NotNull(operation, nameof(operation)); Check.NotNull(builder, nameof(builder)); var name = operation.Name; if (operation.NewName != null) { var qualifiedName = new StringBuilder(); if (operation.Schema != null) { qualifiedName .Append(operation.Schema) .Append("."); } qualifiedName.Append(operation.Name); Rename(qualifiedName.ToString(), operation.NewName, builder); name = operation.NewName; } if (operation.NewSchema != null) { Transfer(operation.NewSchema, operation.Schema, name, builder); } builder.EndCommand(); }
public void Dispatches_visitor() { var operation = new RenameSequenceOperation("dbo.MySequence", "RenamedSequence"); var sqlGeneratorMock = MigrationsTestHelpers.MockSqlGenerator(); var sqlBuilder = new SqlBatchBuilder(); operation.GenerateSql(sqlGeneratorMock.Object, sqlBuilder); sqlGeneratorMock.Verify(g => g.Generate(operation, sqlBuilder), Times.Once()); var codeGeneratorMock = new Mock <MigrationCodeGenerator>(new Mock <ModelCodeGenerator>().Object); var codeBuilder = new IndentedStringBuilder(); operation.GenerateCode(codeGeneratorMock.Object, codeBuilder); codeGeneratorMock.Verify(g => g.Generate(operation, codeBuilder), Times.Once()); var visitorMock = new Mock <MigrationOperationVisitor <object> >(); var context = new object(); operation.Accept(visitorMock.Object, context); visitorMock.Verify(v => v.Visit(operation, context), Times.Once()); }
protected override void Generate(RenameSequenceOperation operation, [CanBeNull] IModel model, MigrationCommandListBuilder builder) { Check.NotNull(operation, nameof(operation)); Check.NotNull(builder, nameof(builder)); var name = operation.Name; if (operation.NewName != null) { var qualifiedName = new StringBuilder(); if (operation.Schema != null) { qualifiedName .Append(Dependencies.SqlGenerationHelper.DelimitIdentifier(operation.Schema)) .Append("."); } qualifiedName.Append(Dependencies.SqlGenerationHelper.DelimitIdentifier(operation.Name)); Rename(qualifiedName.ToString(), Dependencies.SqlGenerationHelper.DelimitIdentifier(operation.NewName), "SEQUENCE", builder); name = operation.NewName; } if (operation.NewSchema != null) { Transfer(operation.NewSchema, operation.Schema, name, "SEQUENCE", builder); } EndStatement(builder); }
protected override void Generate(RenameSequenceOperation operation, IModel model, RelationalCommandListBuilder builder) { Check.NotNull(operation, nameof(operation)); Check.NotNull(builder, nameof(builder)); var separate = false; var name = operation.Name; if (operation.NewName != null) { var qualifiedName = new StringBuilder(); if (operation.Schema != null) { qualifiedName .Append(operation.Schema) .Append("."); } qualifiedName.Append(operation.Name); Rename(qualifiedName.ToString(), operation.NewName, builder); separate = true; name = operation.NewName; } if (operation.NewSchema != null) { if (separate) { builder.AppendLine(SqlGenerationHelper.StatementTerminator); } Transfer(operation.NewSchema, operation.Schema, name, builder); } }
protected override void Generate(RenameSequenceOperation operation, IModel model, SqlBatchBuilder builder) { Check.NotNull(operation, nameof(operation)); Check.NotNull(builder, nameof(builder)); GenerateRename(operation.Name, operation.Schema, operation.NewName, "OBJECT", builder); }
public override void Generate( RenameSequenceOperation renameSequenceOperation, IndentedStringBuilder stringBuilder) { throw new NotSupportedException(Strings.FormatMigrationOperationNotSupported( GetType(), renameSequenceOperation.GetType())); }
protected virtual void Generate( [NotNull] RenameSequenceOperation operation, [CanBeNull] IModel model, [NotNull] MigrationCommandListBuilder builder) { throw new NotImplementedException(); }
public void Create_and_initialize_operation() { var operation = new RenameSequenceOperation("dbo.MySequence", "RenamedSequence"); Assert.Equal("dbo.MySequence", operation.SequenceName); Assert.Equal("RenamedSequence", operation.NewSequenceName); Assert.False(operation.IsDestructiveChange); }
public void Generate_with_move_sequence_is_not_supported() { var operation = new RenameSequenceOperation("EpisodeSequence", "RenamedSchema"); Assert.Equal( Strings.FormatMigrationOperationNotSupported(typeof(SQLiteMigrationOperationSqlGenerator), operation.GetType()), Assert.Throws <NotSupportedException>(() => Generate(operation)).Message); }
public override void Visit(RenameSequenceOperation renameSequenceOperation, DatabaseModel databaseModel) { Check.NotNull(renameSequenceOperation, "renameSequenceOperation"); Check.NotNull(databaseModel, "databaseModel"); var sequence = databaseModel.GetSequence(renameSequenceOperation.SequenceName); sequence.Name = new SchemaQualifiedName(renameSequenceOperation.NewSequenceName, renameSequenceOperation.SequenceName.Schema); }
public void Generate_when_rename_sequence_operation() { var operation = new RenameSequenceOperation("dbo.MySequence", "RenamedSequence"); Assert.Equal( @"RenameSequence(""dbo.MySequence"", ""RenamedSequence"")", CSharpMigrationCodeGenerator.Generate(operation)); GenerateAndValidateCode(operation); }
public override void Generate(RenameSequenceOperation renameSequenceOperation, IndentedStringBuilder stringBuilder) { Check.NotNull(renameSequenceOperation, "renameSequenceOperation"); Check.NotNull(stringBuilder, "stringBuilder"); GenerateRename( renameSequenceOperation.SequenceName, renameSequenceOperation.NewSequenceName, "OBJECT", stringBuilder); }
public void Visit_with_rename_sequence_operation() { var model = new DatabaseModel(); var operation = new RenameSequenceOperation("dbo.MySequence", "RenamedSequence"); model.AddSequence(new Sequence("dbo.MySequence", "bigint", 0, 1)); operation.Accept(new DatabaseModelModifier(), model); Assert.Equal(1, model.Sequences.Count); Assert.Equal("dbo.RenamedSequence", model.Sequences[0].Name); }
public override void Generate(RenameSequenceOperation renameSequenceOperation, SqlBatchBuilder batchBuilder) { Check.NotNull(renameSequenceOperation, "renameSequenceOperation"); Check.NotNull(batchBuilder, "batchBuilder"); GenerateRename( renameSequenceOperation.SequenceName, renameSequenceOperation.NewSequenceName, "OBJECT", batchBuilder); }
public override void Generate(RenameSequenceOperation renameSequenceOperation, IndentedStringBuilder stringBuilder) { Check.NotNull(renameSequenceOperation, "renameSequenceOperation"); Check.NotNull(stringBuilder, "stringBuilder"); stringBuilder .Append("RenameSequence(") .Append(GenerateLiteral(renameSequenceOperation.SequenceName)) .Append(", ") .Append(GenerateLiteral(renameSequenceOperation.NewSequenceName)) .Append(")"); }
protected override void Generate( RenameSequenceOperation operation, IModel model, MigrationCommandListBuilder builder) { if (operation.NewName != null) { builder .Append("RENAME ") .Append(Dependencies.SqlGenerationHelper.DelimitIdentifier(operation.Name)) .Append(" TO ") .Append(Dependencies.SqlGenerationHelper.DelimitIdentifier(operation.NewName)) .EndCommand(); } }
public virtual OperationBuilder <RenameSequenceOperation> RenameSequence(string name, string schema = null, string newName = null, string newSchema = null) { Check.NotEmpty(name, nameof(name)); var operation = new RenameSequenceOperation { Name = name, Schema = schema, NewName = newName, NewSchema = newSchema }; Operations.Add(operation); return(new OperationBuilder <RenameSequenceOperation>(operation)); }
protected virtual void Generate([NotNull] RenameSequenceOperation operation, [NotNull] IndentedStringBuilder builder) { Check.NotNull(operation, nameof(operation)); Check.NotNull(builder, nameof(builder)); builder.AppendLine(".RenameSequence("); using (builder.Indent()) { builder .Append("name: ") .Append(_code.Literal(operation.Name)); if (operation.Schema != null) { builder .AppendLine(",") .Append("schema: ") .Append(_code.Literal(operation.Schema)); } if (operation.NewName != null) { builder .AppendLine(",") .Append("newName: ") .Append(_code.Literal(operation.NewName)); } if (operation.NewSchema != null) { builder .AppendLine(",") .Append("newSchema: ") .Append(_code.Literal(operation.NewSchema)); } builder.Append(")"); Annotations(operation.Annotations, builder); } }
protected override void Generate(RenameSequenceOperation operation, IModel model, MigrationCommandListBuilder builder) { //Tanks Jean! builder.AppendLine("EXECUTE BLOCK") .AppendLine("AS") .AppendLine("DECLARE val INT = 0;") .AppendLine("BEGIN") .AppendLine($"SELECT GEN_ID({operation.Name}, 0) FROM RDB$DATABASE INTO :val;"); if (_options.Settings.ServerVersion.Major >= 2) { builder.AppendLine($"EXECUTE STATEMENT 'CREATE SEQUENCE {Dependencies.SqlGenerationHelper.DelimitIdentifier(operation.NewName)}';") .AppendLine($"EXECUTE STATEMENT 'ALTER SEQUENCE {Dependencies.SqlGenerationHelper.DelimitIdentifier(operation.NewName)} RESTART WITH ' || :val;"); } else { builder.AppendLine($"EXECUTE STATEMENT 'CREATE GENERATOR {Dependencies.SqlGenerationHelper.DelimitIdentifier(operation.NewName)}';") .AppendLine($"EXECUTE STATEMENT 'SET GENERATOR {Dependencies.SqlGenerationHelper.DelimitIdentifier(operation.NewName)} TO ' || :val;"); } builder.AppendLine("END"); }
protected override void Generate(RenameSequenceOperation operation, IModel model, MigrationCommandListBuilder builder) { Check.NotNull(operation, nameof(operation)); Check.NotNull(builder, nameof(builder)); var name = operation.Name; if (operation.NewName != null && operation.NewName != operation.Name) { Rename(operation.Schema, operation.Name, operation.NewName, "SEQUENCE", builder); name = operation.NewName; } if (operation.NewSchema != null && operation.NewSchema != operation.Schema) { Transfer(operation.NewSchema, operation.Schema, name, "SEQUENCE", builder); } EndStatement(builder); }
protected override void Generate(RenameSequenceOperation operation, IModel model, MigrationCommandListBuilder builder) { throw new NotSupportedException("MySql doesn't support sequence operation."); }
protected override void Generate(RenameSequenceOperation operation, IModel model, MigrationCommandListBuilder builder) { throw new NotSupportedException(SqliteStrings.SequencesNotSupported); }
protected override void Generate(RenameSequenceOperation operation, IModel model, RelationalCommandListBuilder builder) { }
public abstract void Generate( [NotNull] RenameSequenceOperation operation, [CanBeNull] IModel model, [NotNull] SqlBatchBuilder builder);
public abstract void Generate([NotNull] RenameSequenceOperation renameSequenceOperation, [NotNull] IndentedStringBuilder stringBuilder);
protected override void Generate(RenameSequenceOperation operation, IModel model, MigrationCommandListBuilder builder) => throw new NotSupportedException("Renaming sequence is not supported by Firebird.");
protected override void Generate(RenameSequenceOperation operation, IModel model, MigrationCommandListBuilder builder) { throw new NotSupportedException(string.Format(NotSupported, operation.GetType().Name)); }
public abstract void Generate([NotNull] RenameSequenceOperation renameSequenceOperation, [NotNull] SqlBatchBuilder batchBuilder);