| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- package postgres
- import (
- "encoding/json"
- "fmt"
- "github.com/jackc/pgx/v4"
- )
- type Test struct {
- base
- }
- func (t Test) UserAdd(name string) {
- stCode := -999
- sql := `select fn_user_add2($1,$2);`
- _, err := t.writeDB().QueryFunc(t.ctx(), sql, []interface{}{name, stCode}, []interface{}{&stCode}, func(pgx.QueryFuncRow) error {
- fmt.Printf("%v", stCode)
- return nil
- })
- if err != nil {
- fmt.Printf("QueryFunc error: %v", err)
- }
- }
- type UserListInfo struct {
- Id int
- 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
- //var ct time.Time
- 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 {
- fmt.Printf("%v\n", usone)
- rs = append(rs, usone)
- return nil
- })
- if err != nil {
- fmt.Printf("QueryFunc error: %v", err)
- }
- 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)
- return nil
- })
- if err != nil {
- fmt.Printf("QueryFunc error: %v", err)
- }
- return
- }
|