Push csv/tsv data to database
| Database | Driver |
|---|---|
| postgresql | github.com/lib/pq |
| mongodb | gopkg.in/mgo.v2 |
| mysql | github.com/go-sql-driver/mysql |
| sqlserver | github.com/denisenkom/go-mssqldb |
| sqlite3 | github.com/mattn/go-sqlite3 |
go install github.com/eirannejad/pushcsvBuild process on Windows requires gcc to support compiling the sqlite3 libraries. Therefore binaries are provided for convenience under Releases. Compiled pushcsv binaries can be installed on Windows using Chocolatey package manager as well.
choco install pushcsvExamples of pushing users.csv into table (collection in case of mongodb) users on supported databases:
$ pushcsv postgres://user:pass@data.mycompany.com/mydb users ~/users.csv --headers --purge
$ pushcsv mongodb://user:pass@localhost:27017/mydb users ~/users.csv --map=name:fullname --map=email:userid
$ pushcsv "mysql:user:pass@tcp(localhost:3306)/tests" users ~/users.csv --purge --map=name:fullname --map=email:userid
$ pushcsv sqlserver://user:pass@my-azure-db.database.windows.net?database=mydb users ~/users.csv --purge --map=name:fullname --map=email:userid
$ pushcsv sqlite3:data.db users ~/users.csv$ git clone git@github.com:eirannejad/pushcsv.git
$ cd pushcsv
$ go get -u ./...
$ go install .
$ pushcsv --helpTo reduce the size of pushcsv compiled binary, install with -ldflags "-w" option.
go install -ldflags "-w" .