Spanner の database/sql ドライバを使用する

Go database/sql は、Go プログラミング言語の SQL(または SQL に似た)データベースを扱う汎用インターフェースです。アプリケーションで database/sql を使用するには、Spanner database/sql ドライバを使用します。

Spanner の database/sql ドライバをインストールする

アプリケーションで Spanner database/sql ドライバを使用するには、次のモジュールを go.mod ファイルに追加します。

  github.com/googleapis/go-sql-spanner

Spanner の database/sql ドライバを使用する

Spanner データベースへの database/sql 接続を作成するには、ドライバ名として spanner を使用し、接続文字列として完全修飾データベース名を使用します。

import (
	"database/sql"
	"fmt"

	_ "github.com/googleapis/go-sql-spanner"
)

func connect(projectId, instanceId, databaseId string) error {
	dsn := fmt.Sprintf("projects/%s/instances/%s/databases/%s", projectId, instanceId, databaseId)
	db, err := sql.Open("spanner", dsn)
	if err != nil {
		return fmt.Errorf("failed to open database connection: %v", err)
	}
	defer func() { _ = db.Close() }()

	fmt.Printf("Connected to %s\n", dsn)

	return nil
}

詳細については、Spanner database/sql ドライバの GitHub リポジトリをご覧ください。

サポートされている機能

Spanner Go database/sql サンプルコード ディレクトリには、よく使用される Spanner 機能の実行可能なサンプルが含まれています。

パフォーマンスのヒント

Spanner database/sql ドライバを使用するときに可能な限り高いパフォーマンスを実現するには、次のベスト プラクティスに従ってください。

次のステップ