wawandco/transporter

Support for MySql

paganotoni opened this issue · 1 comments

We need to provide support for Mysql at least, but it would be good to provide support for any sql driver.

My idea for this is the following:

  1. Build a driver interface that goes as:
type Driver interface {
  func AllMigrationsQuery(tableName string) string
  func DeleteMigrationQuery(tableName string, identifier string) string
  func AddMigrationQuery(tableName string, identifier string) string
  func DropMigrationsTableQuery(tableName string) string
  func CreateMigrationsTableQuery(tableName string) string
}

And basically implement a Driver for the covered DBMS, one for Postgresql and one for Mysql.

One thing we should consider is transactionality, that because we're depending on it in our migrations but for some databases it could not be supported.