From aada3fdcd260927f35ae8860f26c911e88fdf36f Mon Sep 17 00:00:00 2001 From: Jonathan Hall Date: Fri, 9 Apr 2021 12:22:57 +0200 Subject: [PATCH] Update README to mention the New function --- README.md | 67 +++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 45 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 076351c..5cce4e6 100644 --- a/README.md +++ b/README.md @@ -24,33 +24,56 @@ Given, you have a mysql database called **txdb_test** and a table **users** with column. ``` go - package main +package main + +import ( + "database/sql" + "log" + + "github.com/DATA-DOG/go-txdb" + _ "github.com/go-sql-driver/mysql" +) + +func init() { + // we register an sql driver named "txdb" + txdb.Register("txdb", "mysql", "root@/txdb_test") +} + +func main() { + // dsn serves as an unique identifier for connection pool + db, err := sql.Open("txdb", "identifier") + if err != nil { + log.Fatal(err) + } + defer db.Close() - import ( - "database/sql" - "log" + if _, err := db.Exec(`INSERT INTO users(username) VALUES("gopher")`); err != nil { + log.Fatal(err) + } +} +``` - "github.com/DATA-DOG/go-txdb" - _ "github.com/go-sql-driver/mysql" - ) +You can also use [`sql.OpenDB`](https://golang.org/pkg/database/sql/#OpenDB) (added in Go 1.10) rather than registering a txdb driver instance, if you prefer: - func init() { - // we register an sql driver named "txdb" - txdb.Register("txdb", "mysql", "root@/txdb_test") - } +``` go +package main + +import ( + "database/sql" + "log" + + "github.com/DATA-DOG/go-txdb" + _ "github.com/go-sql-driver/mysql" +) + +func main() { + db := sql.OpenDB(txdb.New("mysql", "root@/txdb_test")) + defer db.Close() - func main() { - // dsn serves as an unique identifier for connection pool - db, err := sql.Open("txdb", "identifier") - if err != nil { - log.Fatal(err) - } - defer db.Close() - - if _, err := db.Exec(`INSERT INTO users(username) VALUES("gopher")`); err != nil { - log.Fatal(err) - } + if _, err := db.Exec(`INSERT INTO users(username) VALUES("gopher")`); err != nil { + log.Fatal(err) } +} ``` Every time you will run this application, it will remain in the same state as before.