Go言語でORMを使ってみる(gorm)

こんにちは、エンジニアの船寄です。
今回はGo言語で人気のあるORM、「gorm」というパッケージを使ってみたので、ご紹介させていただきます。
migration、insert、selectをしてみたいと思います。
※ DBはMySQLを使用しています。

目次

gormパッケージをインストールする

まずはgo getでパッケージをインストールします。

[bash] go get -u github.com/jinzhu/gorm
[/bash]

DBスキーマを作成する

テスト用にMySQLへgormという名前で作成します。

[bash] create database gorm;
[/bash]

テーブル定義(struct)を設定しmigratonを試してみる

  • 1対1,1対多のテーブルを作成します

  • 接続情報は下記の通りです。

  • [bash] gorm.Open("mysql", "ユーザ名:パスワード@/gorm?charset=utf8&parseTime=True&loc=Local")</code></pre>
    [/bash]
  • ネストしているstructのgorm.Modelには、ID, CreatedAt, DeletedAtが設定されております。

  • `AutoMigrate`はcolumnかindexが追加された場合のみ、DBへ反映してくれます。下記のようなqueryが走っていました。

  • テーブルができました。

INSERTしてみる

SELECTしてみる

実行結果です。簡単にselectすることができました!

以下のqueryが走っていました。

最後に

いかがでしたでしょうか。
gormはドキュメントも充実しているので、利用しやすいです。
興味がある方は触ってみてください。

当社ではエンジニアの仲間を募集しております。
興味のある方はこちら↓からご応募ください。

http://linkbal.co.jp/recruit/

著作権注記

The Go gopher was designed by Renee French. (http://reneefrench.blogspot.com/)
The design is licensed under the Creative Commons 3.0 Attributions license.
Read this article for more details: https://blog.golang.org/gopher