1. HOME
  2. ブログ
  3. IT技術
  4. 【第12回】Go言語(Golang)入門~MySQL接続編~

【第12回】Go言語(Golang)入門~MySQL接続編~

第12回~Go言語(Golang)入門~

笹川笹川先生

(株)ライトコードの笹川(ささがわ)です!

今回は、データベース系の第3弾!

Firestore、ObjectBox とやってきたので、データベースとしては、王道の1つであるMySQLを使ってみようと思います。

ただ、MySQL のインストールや構築は省略させていただきます。

それでは、いってみましょう!

前回の記事はこちら

MySQLと接続してみよう

今回は、「GORM」というライブラリを使います。

【GORM(ゴルム)】
https://gorm.io/

いわゆる、ORM というやつです。

選定の理由は、利用者も多くコミュニティも活発だからです!

テーブルを用意

MySQL に下記のテーブルを用意します。

カラム名制約概要
idINTEGERAuto Incremen

Primary Key

nameTEXT名前
ageINTEGER年齢
addressTEXT住所
update_atDATETIME更新日時

接続情報は下記とします。

DB名Table名ユーザー名ホストパスワードPort
go_exampleusersgo_examplelocalhost12345!3306

実装

それでは、接続の実装をしてみましょう。

接続情報の設定にミスがなれけば、ログに「DB接続成功」と出るはずです。

構造体を用意してみよう

接続が問題なく出来たので、データを色々操作するために、テーブル構造に沿った形で構造体を実装します。

DATE型であるカラムの update_atで すが、string型として構造体を作成してます。

理由としては、REST API として JSON で吐き出す際や、値を受け取る際のパースが string  のほうが簡単だったからです!

ここは笹川の経験不足で上手く扱えなかったので、今記事では string  のまま進めます。

データを追加してみよう

GORM では、とても簡単にデータを追加できます。

なんと、たったこれだけで、データが追加できます。

update_atカラムへのデータの生成は、別メソッドで作ります。

現在日時を「 yyyy-MM-dd HH:mm:ss 」の文字列形式で生成します。

データ接続から追加までを纏めると、こんな感じになります。

「テスト太郎」が追加されたら成功です!

データの取得をしてみましょう

では、追加したデータを表示させたいと思います。

特に、検索条件がない場合は、とても簡単です。

もちろん、「検索」をするのも簡単です。

このように、LIKE検索なども、サクッと実装できてします。

クエリについては、以下の公式ドキュメントを参考にすれば、大体のことは出来るはずです!

【公式ドキュメント】
http://gorm.io/ja_JP/docs/query.html

データの取得までで結構なボリュームになってしまったので、「データの更新」と「削除」は次回にやりたいと思います!

第13回へつづく!

GORMを使うと、Golang(Go言語)でMySQLを扱うのが格段に楽になります。

Golang(Go言語)と RDBMS の親和性は、あまり高くないと聞いたことがありますが、それでも使いたい人は多いハズ!

GORM を使って、みんなで楽しましょう!

次回の記事はこちら

オススメのGo入門本

Goプログラミング実践入門 標準ライブラリでゼロからWebアプリを作る
Goプログラミング実践入門 標準ライブラリでゼロからWebアプリを作る

 

こちらの記事もオススメ!

第1回の記事はこちら

書いた人はこんな人

笹川(エンジニア)
新潟生まれ新潟育ち本業はモバイルアプリエンジニア。
日々、猫(犬)エンジニアとして活躍中!

関連記事

採用情報

\ あの有名サービスに参画!? /

バックエンドエンジニア

\ クリエイティブの最前線 /

フロントエンドエンジニア

\ 世界を変える…! /

Androidエンジニア

\ みんなが使うアプリを創る /

iOSエンジニア