File tree Expand file tree Collapse file tree 2 files changed +58
-14
lines changed
Expand file tree Collapse file tree 2 files changed +58
-14
lines changed Original file line number Diff line number Diff line change @@ -52,13 +52,35 @@ db.Table().Where().Delete()
5252
5353## simple usage example
5454``` go
55- res , err := db.Table (" users" ).First ()
56- // res is a map[string]interface{}
57- fmt.Println (res)
58-
59- res2 , _ := db.Table (" users" ).Get ()
60- // res2 is a []map[string]interface{}
61- fmt.Println (res2)
55+ package main
56+ import (
57+ " fmt"
58+ " github.com/gohouse/gorose"
59+ _ " github.com/mattn/go-sqlite3"
60+ )
61+ var err error
62+ var engin *gorose.Engin
63+ func init () {
64+ // Global initialization and reuse of databases
65+ // The engin here needs to be saved globally, using either global variables or singletons
66+ // Configuration & gorose. Config {} is a single database configuration
67+ // If you configure a read-write separation cluster, use & gorose. ConfigCluster {}
68+ engin, err = gorose.Open (&gorose.Config {Driver: " sqlite3" , Dsn: " ./db.sqlite" })
69+ }
70+ func DB () gorose .IOrm {
71+ return engin.NewOrm ()
72+ }
73+ func main () {
74+ // fetch one row
75+ res , err := DB ().Table (" users" ).First ()
76+ // res's type is map[string]interface{}
77+ fmt.Println (res)
78+
79+ // fetch more rows
80+ res2 , _ := DB ().Table (" users" ).Get ()
81+ // res2's type is []map[string]interface{}
82+ fmt.Println (res2)
83+ }
6284```
6385
6486## usage advise
Original file line number Diff line number Diff line change @@ -47,13 +47,35 @@ db.Table().Where().Delete()
4747
4848## 简单用法示例
4949``` go
50- res , err := db.Table (" users" ).First ()
51- // res 类型为 map[string]interface{}
52- fmt.Println (res)
53-
54- res2 , _ := db.Table (" users" ).Get ()
55- // res2 类型为 []map[string]interface{}
56- fmt.Println (res2)
50+ package main
51+ import (
52+ " fmt"
53+ " github.com/gohouse/gorose"
54+ _ " github.com/mattn/go-sqlite3"
55+ )
56+ var err error
57+ var engin *gorose.Engin
58+ func init () {
59+ // 全局初始化数据库,并复用
60+ // 这里的engin需要全局保存,可以用全局变量,也可以用单例
61+ // 配置&gorose.Config{}是单一数据库配置
62+ // 如果配置读写分离集群,则使用&gorose.ConfigCluster{}
63+ engin, err = gorose.Open (&gorose.Config {Driver: " sqlite3" , Dsn: " ./db.sqlite" })
64+ }
65+ func DB () gorose .IOrm {
66+ return engin.NewOrm ()
67+ }
68+ func main () {
69+ // 单条数据
70+ res , err := DB ().Table (" users" ).First ()
71+ // res 类型为 map[string]interface{}
72+ fmt.Println (res)
73+
74+ // 多条数据
75+ res2 , _ := DB ().Table (" users" ).Get ()
76+ // res2 类型为 []map[string]interface{}
77+ fmt.Println (res2)
78+ }
5779```
5880
5981## 使用建议
You can’t perform that action at this time.
0 commit comments