cloudsql 套件

import "google.golang.org/appengine/cloudsql"

簡介

「cloudsql」套件公開對 Google Cloud SQL 資料庫的存取權。

此套件無法在 App Engine 彈性環境中運作。

這個套件適用於 MySQL 驅動程式,可用於建立 App Engine 專屬連線。應用程式應透過 database/sql 使用這個套件:選取支援這個套件的純 Go MySQL 驅動程式,並透過「cloudsql」通訊協定和 Cloud SQL 執行個體的位址使用 sql.Open。

已通過測試為可與 Cloud SQL 搭配使用的 Go MySQL 驅動程式是 go-sql-driver:

import "database/sql"
import _ "github.com/go-sql-driver/mysql"

db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname")

另一個適用於 Cloud SQL 的驅動程式是 mymysql 驅動程式:

import "database/sql"
import _ "github.com/ziutek/mymysql/godrv"

db, err := sql.Open("mymysql", "cloudsql:instance-name*dbname/user/password")

您可以使用其中一種驅動程式來執行標準 SQL 查詢。以下例子假定有一個名為「users」的資料表,其中具有「first_name」和「last_name」欄:

rows, err := db.Query("SELECT first_name, last_name FROM users")
if err != nil {
    log.Errorf(ctx, "db.Query: %v", err)
}
defer rows.Close()

for rows.Next() {
    var firstName string
    var lastName string
    if err := rows.Scan(&firstName, &lastName); err != nil {
        log.Errorf(ctx, "rows.Scan: %v", err)
        continue
    }
    log.Infof(ctx, "First: %v - Last: %v", firstName, lastName)
}
if err := rows.Err(); err != nil {
    log.Errorf(ctx, "Row error: %v", err)
}

索引

func Dial(instance string) (net.Conn, error)

func Dial

func Dial(instance string) (net.Conn, error)

Dial 連線至已命名的 Cloud SQL 執行個體。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Go 適用的 App Engine 標準環境