Migration.create constructor

Migration.create(
  1. String id,
  2. List<TableSchema> schema, {
  3. required SqlDialect dialect,
})

Plans creation of a new schema for dialect, without database access.

Implementation

factory Migration.create(
  String id,
  List<TableSchema> schema, {
  required SqlDialect dialect,
}) => Migration.steps(
  id,
  isMysqlFamily(dialect)
      ? mysqlCreateSteps(schema, dialect)
      : [
          for (final command in createSchema(schema, dialect))
            ExecuteSql(command.sql),
        ],
  dialect: dialect,
  snapshot: SchemaSnapshot(schema),
);