講完 Go 基礎後,就要來開始進到實作了~
今天要來介紹的是,如何使用 Go 連接 SQL 資料庫
我們這邊使用的 SQL 資料庫是輕量、跨平台的 SQLite
既然要連接資料庫,那就不得不提到 ORM (Object Relational Mapping),中文叫做 物件關聯映射
ORM 可以想像成開發人員與 SQL 資料庫之間的中間層
開發人員使用 ORM 提供的 method 來對進行資料庫操作
ORM 收到開發人員下的 method 後,轉換成相對應的 SQL 指令,來與 SQL 資料庫進行互動
整個操作流程會變成像是下面這張圖
我們這邊選擇使用的 ORM 是 GORM
一個 Go 開發首選的 ORM 套件,GORM 具有以下特色 (以下取自於 GORM 官網)
簡單介紹完 GORM 後,我們就要來進行安裝啦
這邊會假設大家都已經剛新建好一個專案,如果還沒新建好的話,可以回去看 Day 3 的教學
打開 Terminal 輸入下面指令
go get -u gorm.io/gorm
go get -u gorm.io/driver/sqlite
裝好 GORM 跟 SQLite driver 後,就可以來連接資料庫了~
首先,我們先新增一個資料夾,叫做「database」,然後在裡面新增一個「database.go」的檔案
package database
import (
"gorm.io/driver/sqlite"
"gorm.io/gorm"
)
var DB *gorm.DB
// ConnectDB 連線到 SQLite 資料庫
func ConnectDB() {
db, err := gorm.Open(sqlite.Open("db.sqlite"))
if err != nil {
panic(err)
}
err = db.AutoMigrate()
if err != nil {
panic(err)
}
DB = db
}
接著在 main.go 裡的 func main()
內呼叫 database.ConnectDB()
package main
import "demo/database"
func main() {
database.ConnectDB()
}
執行後,就會看到我們的 db.sqlite
檔案生出來了,這樣就算連接好 SQLite 資料庫了~
以上 Sample Code 可以在我 GitHub 上找到
https://github.com/leoho0722/it15th
今天簡單介紹了如何使用 GORM 來連接 SQLite 資料庫
明天會來介紹如何使用 GORM 來對資料庫進行資料新增
我們明天見~