この記事では、Goを使ってデータベースを操作する方法について、初心者向けに解説します。
データベースは、情報を整理して保存する場所のことです。例えば、ユーザーの情報や商品のリストなど、アプリケーションで扱うさまざまなデータを管理できます。このデータを効率よく操作するために、SQLという言語が使われます。
まず、Go言語をパソコンにインストールします。公式サイトからダウンロードし、インストールの手順に従ってください。インストールが終わったら、コマンドラインで go version
と入力して、正しくインストールされたか確認します。
Goでデータベースを操作するには、「database/sql」というパッケージが基本となります。また、使いたいデータベースに合わせたドライバーも必要です。今回はMySQLを使う例を見ていきます。次のコマンドを実行して、MySQL用のドライバーをインストールします。
go get -u github.com/go-sql-driver/mysql
それでは、実際にGo言語を使ってデータベースに接続し、データを挿入してみましょう。
まずはデータベースに接続するためのコードを書きます。下記の例では、MySQLに接続するための基本的な設定を示しています。
package main
import (
"database/sql"
"fmt"
"log"
_ "github.com/go-sql-driver/mysql"
)
func main() {
// データベースに接続
db, err := sql.Open("mysql", "ユーザー名:パスワード@tcp(ホスト:ポート)/データベース名")
if err != nil {
log.Fatal(err)
}
defer db.Close()
fmt.Println("データベースに接続しました!")
}
次に、データベースにデータを挿入する方法を見てみましょう。
// データを挿入するSQL文
query := "INSERT INTO users (name, age) VALUES (?, ?)"
_, err = db.Exec(query, "田中", 25)
if err != nil {
log.Fatal(err)
}
fmt.Println("データを挿入しました!")
最後に、データベースからデータを取得するコードを見てみます。
// データを取得するSQL文
rows, err := db.Query("SELECT name, age FROM users")
if err != nil {
log.Fatal(err)
}
defer rows.Close()
// 取得したデータを表示
for rows.Next() {
var name string
var age int
if err := rows.Scan(&name, &age); err != nil {
log.Fatal(err)
}
fmt.Printf("名前: %s, 年齢: %d\n", name, age)
}
if err := rows.Err(); err != nil {
log.Fatal(err)
}
この記事では、Go言語を使ってデータベースに接続し、データを挿入したり取得したりする基本的な方法について紹介しました。データベース操作は、アプリケーションを作る上でとても重要なスキルです。