Skip to content

Commit 9a60c5f

Browse files
committed
Koneksi Database
1 parent bd2b882 commit 9a60c5f

File tree

4 files changed

+44
-0
lines changed

4 files changed

+44
-0
lines changed

book/entity.go

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package book
2+
3+
import "time"
4+
5+
type Book struct {
6+
ID int
7+
Title string
8+
Description string
9+
Price int
10+
Rating int
11+
CreatedAt time.Time
12+
UpdatedAt time.Time
13+
}

go.mod

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,18 @@ module pustaka-api
22

33
go 1.17
44

5+
require gorm.io/driver/mysql v1.3.2
6+
57
require (
68
github.com/gin-contrib/sse v0.1.0 // indirect
79
github.com/gin-gonic/gin v1.7.7 // indirect
810
github.com/go-playground/locales v0.14.0 // indirect
911
github.com/go-playground/universal-translator v0.18.0 // indirect
1012
github.com/go-playground/validator/v10 v10.10.0 // indirect
13+
github.com/go-sql-driver/mysql v1.6.0 // indirect
1114
github.com/golang/protobuf v1.5.2 // indirect
15+
github.com/jinzhu/inflection v1.0.0 // indirect
16+
github.com/jinzhu/now v1.1.4 // indirect
1217
github.com/json-iterator/go v1.1.12 // indirect
1318
github.com/leodido/go-urn v1.2.1 // indirect
1419
github.com/mattn/go-isatty v0.0.14 // indirect
@@ -20,4 +25,5 @@ require (
2025
golang.org/x/text v0.3.7 // indirect
2126
google.golang.org/protobuf v1.27.1 // indirect
2227
gopkg.in/yaml.v2 v2.4.0 // indirect
28+
gorm.io/gorm v1.23.1 // indirect
2329
)

go.sum

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,18 @@ github.com/go-playground/universal-translator v0.18.0/go.mod h1:UvRDBj+xPUEGrFYl
1515
github.com/go-playground/validator/v10 v10.4.1/go.mod h1:nlOn6nFhuKACm19sB/8EGNn9GlaMV7XkbRSipzJ0Ii4=
1616
github.com/go-playground/validator/v10 v10.10.0 h1:I7mrTYv78z8k8VXa/qJlOlEXn/nBh+BF8dHX5nt/dr0=
1717
github.com/go-playground/validator/v10 v10.10.0/go.mod h1:74x4gJWsvQexRdW8Pn3dXSGrTK4nAUsbPlLADvpJkos=
18+
github.com/go-sql-driver/mysql v1.6.0 h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE=
19+
github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
1820
github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw=
1921
github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
2022
github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw=
2123
github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
2224
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
2325
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
26+
github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E=
27+
github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc=
28+
github.com/jinzhu/now v1.1.4 h1:tHnRBy1i5F2Dh8BAFxqFzxKqqvezXrL2OW1TnX+Mlas=
29+
github.com/jinzhu/now v1.1.4/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8=
2430
github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
2531
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
2632
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
@@ -96,3 +102,7 @@ gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
96102
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
97103
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
98104
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
105+
gorm.io/driver/mysql v1.3.2 h1:QJryWiqQ91EvZ0jZL48NOpdlPdMjdip1hQ8bTgo4H7I=
106+
gorm.io/driver/mysql v1.3.2/go.mod h1:ChK6AHbHgDCFZyJp0F+BmVGb06PSIoh9uVYKAlRbb2U=
107+
gorm.io/gorm v1.23.1 h1:aj5IlhDzEPsoIyOPtTRVI+SyaN1u6k613sbt4pwbxG0=
108+
gorm.io/gorm v1.23.1/go.mod h1:l2lP/RyAtc1ynaTjFksBde/O8v9oOGIApu2/xRitmZk=

main.go

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,29 @@
11
package main
22

33
import (
4+
"fmt"
5+
"log"
46
"net/http"
57

68
"pustaka-api/handler"
79

810
"github.com/gin-gonic/gin"
11+
12+
"gorm.io/driver/mysql"
13+
"gorm.io/gorm"
914
)
1015

1116
func main() {
17+
// refer https://github.com/go-sql-driver/mysql#dsn-data-source-name for details
18+
dsn := "root:@tcp(127.0.0.1:3306)/pustaka-api?charset=utf8mb4&parseTime=True&loc=Local"
19+
_, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
20+
21+
if err != nil {
22+
log.Fatal("Db Erorr")
23+
}
24+
25+
fmt.Println("Database Berhasil Terhubung")
26+
1227
router := gin.Default()
1328

1429
v1 := router.Group("/v1")

0 commit comments

Comments
 (0)