|
|
@@ -1,7 +1,6 @@
|
|
|
package postgres
|
|
|
|
|
|
import (
|
|
|
- "encoding/json"
|
|
|
"fmt"
|
|
|
"gframe/errors"
|
|
|
"github.com/jackc/pgx/v4"
|
|
|
@@ -49,30 +48,6 @@ type UserListInfo struct {
|
|
|
Name string
|
|
|
}
|
|
|
|
|
|
-func (t Test) UserList1() (rs []interface{}, err error) {
|
|
|
- //var id int32
|
|
|
- //var name string
|
|
|
- //var ct time.Time
|
|
|
- var one interface{}
|
|
|
- var rs_ struct {
|
|
|
- Rs []interface{}
|
|
|
- }
|
|
|
- //var a interface{}
|
|
|
-
|
|
|
- sql := `select id,name from func_userlist_query();`
|
|
|
- _, err = t.writeDB().QueryFunc(t.ctx(), sql, []interface{}{}, []interface{}{&one}, func(rows pgx.QueryFuncRow) error {
|
|
|
-
|
|
|
- rs_.Rs = append(rs_.Rs, one)
|
|
|
- return nil
|
|
|
- })
|
|
|
- if err != nil {
|
|
|
- fmt.Printf("QueryFunc error: %v", err)
|
|
|
- }
|
|
|
-
|
|
|
- data, err := json.Marshal(rs_)
|
|
|
- println(string(data))
|
|
|
- return
|
|
|
-}
|
|
|
func (t Test) UserList2() (rs []interface{}, err error) {
|
|
|
//var id int32
|
|
|
//var name string
|
|
|
@@ -80,7 +55,7 @@ func (t Test) UserList2() (rs []interface{}, err error) {
|
|
|
usone := UserListInfo{}
|
|
|
|
|
|
sql := `select id,name from func_userlist_query();`
|
|
|
- _, err = t.writeDB().QueryFunc(t.ctx(), sql, []interface{}{}, []interface{}{&usone.Id, &usone.Name}, func(pgx.QueryFuncRow) error {
|
|
|
+ _, err = t.writeDB().QueryFunc(t.ctx(), sql, []interface{}{}, []interface{}{&usone.Id, &usone.Name}, func(rows pgx.QueryFuncRow) error {
|
|
|
|
|
|
fmt.Printf("%v\n", usone)
|
|
|
rs = append(rs, usone)
|
|
|
@@ -92,22 +67,15 @@ func (t Test) UserList2() (rs []interface{}, err error) {
|
|
|
}
|
|
|
return
|
|
|
}
|
|
|
-func (t Test) UserList() (rs []interface{}, err error) {
|
|
|
- var id int
|
|
|
- var name string
|
|
|
- //var ct time.Time
|
|
|
- //usone := UserListInfo{}
|
|
|
|
|
|
- sql := `select id,name from func_userlist_query();`
|
|
|
- _, err = t.writeDB().QueryFunc(t.ctx(), sql, []interface{}{}, []interface{}{&id, &name}, func(pgx.QueryFuncRow) error {
|
|
|
- usone := UserListInfo{id, name}
|
|
|
- fmt.Printf("%v\n", usone)
|
|
|
- rs = append(rs, usone)
|
|
|
+func (t Test) UserList() (rs []interface{}, err error) {
|
|
|
|
|
|
- return nil
|
|
|
- })
|
|
|
+ sql := `select * from func_userlist_query();`
|
|
|
+ rows, err := t.writeDB().Query(t.ctx(), sql)
|
|
|
if err != nil {
|
|
|
fmt.Printf("QueryFunc error: %v", err)
|
|
|
}
|
|
|
+ rs = PgSqlRowsToInerface(rows)
|
|
|
+
|
|
|
return
|
|
|
}
|