gorm でとりあえず mysql にアクセス

未分類

Go言語の ORM である gorm を使って mysql にアクセスします。

GORM
https://gorm.io/ja_JP

% mkdir test_go
% cd test_go

go.mod ファイルを生成

% go mod init go_test

mysql で users というテーブルを作成し、
id, email, name というフィールドを作成してください
id はInt型、emailとnameはVARCHAR型です。

id=1 のカラムを作成し、適当な email と name を入れてください。

以下のファイルを作成してください。

username, password, dbname の部分は
各自の mysql のパラメータに置き換えてください。

go_test/main.go

package main

import (
  "fmt"
  "gorm.io/driver/mysql"
  "gorm.io/gorm"
)

type User struct {
  Id uint
  Name string
  Email string
}

func main() {
  dsn := "username:password@tcp(127.0.0.1:3306)/dbname?charset=utf8mb4&parseTime=True&loc=Local"

  db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})

  if err != nil {
    panic("failed to connect database")
  }

  var user User

  // where id = 1 の意味
  db.First(&user, 1)

  fmt.Println("hello from gorm")
  fmt.Println(user.Id)
  fmt.Println(user.Name)
  fmt.Println(user.Email)
}

実行

% go run main.go
hello from gorm
1
名無しさん
hoge@fuga.com

とか表示されれば成功です!

Go言語でオススメの本

Goならわかるシステムプログラミング

改訂2版 みんなのGo言語

コメント

タイトルとURLをコピーしました