# Go database migrate This is a simple database migration library for Go. This library is intended to be used with go-bindata. We recommended using a go generate command to update the go-bindata file. ## Installation You can install this library with go get ``` go get git.fuyu.moe/Fuyu/migrate ``` ## Example `files/0001.sql`: ```sql CREATE TABLE tests ( Name varchar(100) NOT NULL ); INSERT INTO tests VALUES ('migration test'); ``` Run `go-bindata --prefix files files` *Optionally you can add the flags `-nomemcopy` and `-nometadata`* `main.go`: ```go package main import ( "database/sql" "fmt" "git.fuyu.moe/Fuyu/migrate" _ "github.com/lib/pq" ) func main() { db, err := sql.Open(`postgres`, `host=/run/postgresql dbname=testdb sslmode=disable`) if err != nil { fmt.Println(`Failed to connect to database. Message:`, err) return } err = migrate.Migrate(db, 1, migrate.Options{Schema: `testschema`}, Asset) if err != nil { fmt.Println(`The migration failed! Message:`, err) return } fmt.Println(`The database migration/update was successful`) } ``` ## File names: The names of your migration files should look like this: ``` 0001.sql 0002.sql ... 0010.sql ... 0325.sql ```