From 7d8187d893ced2d7c8c2bded163e30788b78a3f7 Mon Sep 17 00:00:00 2001 From: Seth Shelnutt Date: Tue, 30 Jul 2019 09:17:26 -0400 Subject: [PATCH 1/2] Move main to cmd sub package --- README.md | 60 ++++++++++++++-------------- {db2struct => cmd/db2struct}/main.go | 0 2 files changed, 30 insertions(+), 30 deletions(-) rename {db2struct => cmd/db2struct}/main.go (100%) diff --git a/README.md b/README.md index 9ff62ca..3c78971 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ Db2Struct is based/inspired by the work of ChimeraCoder's gojson package ## Usage ```BASH -go get github.com/Shelnutt2/db2struct/db2struct +go get github.com/Shelnutt2/db2struct/cmd/db2struct db2struct --host localhost -d test -t test_table --package myGoPackage --struct testTable -p --user testUser ``` @@ -45,13 +45,13 @@ type User struct { ## Supported Databases Currently Supported -- MariaDB -- MySQL +- MariaDB +- MySQL Planned Support -- PostgreSQL -- Oracle -- Microsoft SQL Server +- PostgreSQL +- Oracle +- Microsoft SQL Server ### MariaDB/MySQL @@ -61,27 +61,27 @@ and metadata to create a usable go compatible struct type. #### Supported Datatypes Currently only a limited number of MariaDB/MySQL datatypes are supported. Initial support includes: -- tinyint (sql.NullInt64 or null.Int) -- int (sql.NullInt64 or null.Int) -- smallint (sql.NullInt64 or null.Int) -- mediumint (sql.NullInt64 or null.Int) -- bigint (sql.NullInt64 or null.Int) -- decimal (sql.NullFloat64 or null.Float) -- float (sql.NullFloat64 or null.Float) -- double (sql.NullFloat64 or null.Float) -- datetime (null.Time) -- time (null.Time) -- date (null.Time) -- timestamp (null.Time) -- var (sql.String or null.String) -- enum (sql.String or null.String) -- varchar (sql.String or null.String) -- longtext (sql.String or null.String) -- mediumtext (sql.String or null.String) -- text (sql.String or null.String) -- tinytext (sql.String or null.String) -- binary -- blob -- longblob -- mediumblob -- varbinary +- tinyint (sql.NullInt64 or null.Int) +- int (sql.NullInt64 or null.Int) +- smallint (sql.NullInt64 or null.Int) +- mediumint (sql.NullInt64 or null.Int) +- bigint (sql.NullInt64 or null.Int) +- decimal (sql.NullFloat64 or null.Float) +- float (sql.NullFloat64 or null.Float) +- double (sql.NullFloat64 or null.Float) +- datetime (null.Time) +- time (null.Time) +- date (null.Time) +- timestamp (null.Time) +- var (sql.String or null.String) +- enum (sql.String or null.String) +- varchar (sql.String or null.String) +- longtext (sql.String or null.String) +- mediumtext (sql.String or null.String) +- text (sql.String or null.String) +- tinytext (sql.String or null.String) +- binary +- blob +- longblob +- mediumblob +- varbinary diff --git a/db2struct/main.go b/cmd/db2struct/main.go similarity index 100% rename from db2struct/main.go rename to cmd/db2struct/main.go From c79aa0335f6d7b50f2f17575222bc14c5265c5df Mon Sep 17 00:00:00 2001 From: Seth Shelnutt Date: Tue, 30 Jul 2019 09:18:11 -0400 Subject: [PATCH 2/2] Add go.mod/go.sum --- go.mod | 10 ++++++++++ go.sum | 14 ++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 go.mod create mode 100644 go.sum diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..8ddf5dc --- /dev/null +++ b/go.mod @@ -0,0 +1,10 @@ +module github.com/Shelnutt2/db2struct + +go 1.12 + +require ( + github.com/droundy/goopt v0.0.0-20170604162106-0b8effe182da + github.com/go-sql-driver/mysql v1.4.1 + github.com/howeyc/gopass v0.0.0-20170109162249-bf9dde6d0d2c + golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4 // indirect +) diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..87ad056 --- /dev/null +++ b/go.sum @@ -0,0 +1,14 @@ +github.com/droundy/goopt v0.0.0-20170604162106-0b8effe182da h1:79H+mNJWOObWrQgbkSvvZ3t/D2lKWaTi9mu/v7fNRvg= +github.com/droundy/goopt v0.0.0-20170604162106-0b8effe182da/go.mod h1:ytRJ64WkuW4kf6/tuYqBATBCRFUP8X9+LDtgcvE+koI= +github.com/go-sql-driver/mysql v1.4.1 h1:g24URVg0OFbNUTx9qqY1IRZ9D9z3iPyi5zKhQZpNwpA= +github.com/go-sql-driver/mysql v1.4.1/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w= +github.com/howeyc/gopass v0.0.0-20170109162249-bf9dde6d0d2c h1:kQWxfPIHVLbgLzphqk3QUflDy9QdksZR4ygR807bpy0= +github.com/howeyc/gopass v0.0.0-20170109162249-bf9dde6d0d2c/go.mod h1:lADxMC39cJJqL93Duh1xhAs4I2Zs8mKS89XWXFGp9cs= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4 h1:HuIa8hRrWRSrqYzx1qI49NNxhdi2PrY7gxVSq1JjLDc= +golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190412213103-97732733099d h1:+R4KGOnez64A81RvjARKc4UT5/tI9ujCIVX+P5KiHuI= +golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=