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

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

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

笹川笹川先生

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

今回は、データベース系の第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

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

さいごに

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

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

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

関連記事

ライトコードよりお知らせ

にゃんこ師匠にゃんこ師匠
システム開発のご相談やご依頼はこちら
ミツオカミツオカ
ライトコードの採用募集はこちら
にゃんこ師匠にゃんこ師匠
社長と一杯飲みながらお話してみたい方はこちら
ミツオカミツオカ
フリーランスエンジニア様の募集はこちら
にゃんこ師匠にゃんこ師匠
その他、お問い合わせはこちら
ミツオカミツオカ
   
お気軽にお問い合わせください!せっかくなので、別の記事もぜひ読んでいって下さいね!

一緒に働いてくれる仲間を募集しております!

ライトコードでは、仲間を募集しております!

当社のモットーは「好きなことを仕事にするエンジニア集団」「エンジニアによるエンジニアのための会社」。エンジニアであるあなたの「やってみたいこと」を全力で応援する会社です。

また、ライトコードは現在、急成長中!だからこそ、あなたにお任せしたいやりがいのあるお仕事は沢山あります。「コアメンバー」として活躍してくれる、あなたからのご応募をお待ちしております!

なお、ご応募の前に、「話しだけ聞いてみたい」「社内の雰囲気を知りたい」という方はこちらをご覧ください。

ライトコードでは一緒に働いていただける方を募集しております!

採用情報はこちら

書いた人はこんな人

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

関連記事