Package google.golang.org/appengine/cloudsql (v1.6.7)

Package cloudsql exposes access to Google Cloud SQL databases.

This package does not work in App Engine "flexible environment".

This package is intended for MySQL drivers to make App Engine-specific connections. Applications should use this package through database/sql: Select a pure Go MySQL driver that supports this package, and use sql.Open with protocol "cloudsql" and an address of the Cloud SQL instance.

A Go MySQL driver that has been tested to work well with Cloud SQL is the 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" 
 ) 

Another driver that works well with Cloud SQL is the mymysql driver:

 import 
  
 "database/sql" 
 import 
  
 _ 
  
 "github.com/ziutek/mymysql/godrv" 
 db 
 , 
  
 err 
  
 : 
 = 
  
 sql 
 . 
 Open 
 ( 
 "mymysql" 
 , 
  
 "cloudsql:instance-name*dbname/user/password" 
 ) 

Using either of these drivers, you can perform a standard SQL query. This example assumes there is a table named 'users' with columns 'first_name' and '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 
 ) 
 } 

Functions

func Dial

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

Dial connects to the named Cloud SQL instance.

Create a Mobile Website
View Site in Mobile | Classic
Share by: