Skip to content

Commit 70a05ce

Browse files
committed
created basic connection, query + mapping data successful
0 parents  commit 70a05ce

File tree

3 files changed

+85
-0
lines changed

3 files changed

+85
-0
lines changed

go.mod

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
module github.com/mike-bionic/db-gateway-go
2+
3+
go 1.16
4+
5+
require (
6+
github.com/go-sql-driver/mysql v1.6.0 // indirect
7+
github.com/lib/pq v1.10.2 // indirect
8+
)

go.sum

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
github.com/go-sql-driver/mysql v1.6.0 h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE=
2+
github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
3+
github.com/lib/pq v1.10.2 h1:AqzbZs4ZoCBp+GtejcpCpcxM3zlSMx29dXbUSeVtJb8=
4+
github.com/lib/pq v1.10.2/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o=

main.go

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
package main
2+
3+
import (
4+
"database/sql"
5+
"fmt"
6+
"log"
7+
8+
_ "github.com/lib/pq"
9+
)
10+
11+
func main() {
12+
13+
db_type := "postgres"
14+
db_user := "postgres"
15+
db_password := "123456"
16+
db_host := "localhost"
17+
db_database := "dbSapHasap"
18+
19+
connStr := fmt.Sprintf("%s://%s:%s@%s/%s?sslmode=disable", db_type, db_user, db_password, db_host, db_database)
20+
21+
db, err := sql.Open("postgres", connStr)
22+
if err != nil {
23+
log.Fatal(err)
24+
}
25+
26+
query_request := "SELECT \"ResId\", \"ResName\" FROM tbl_dk_resource"
27+
28+
rows, err := db.Query(query_request)
29+
30+
if err != nil {
31+
log.Fatal(err)
32+
}
33+
34+
defer rows.Close()
35+
36+
cols, _ := rows.Columns()
37+
38+
for rows.Next() {
39+
40+
values := make([]interface{}, len(cols))
41+
valuePointers := make([]interface{}, len(cols))
42+
43+
for i := range cols {
44+
valuePointers[i] = &values[i]
45+
}
46+
47+
err := rows.Scan(valuePointers...)
48+
if err != nil {
49+
log.Fatal(err)
50+
}
51+
52+
for i, col := range cols {
53+
54+
val := values[i]
55+
56+
b, ok := val.([]byte)
57+
var v interface{}
58+
59+
if ok {
60+
v = string(b)
61+
} else {
62+
v = val
63+
}
64+
65+
fmt.Println(col, v)
66+
67+
}
68+
69+
}
70+
71+
defer db.Close()
72+
73+
}

0 commit comments

Comments
 (0)