go でとりあえず mysql にアクセス
go 言語、最近始めましたが、Cとrubyの中間のような言語でいいですね。
rubyみたいな感じで C言語みたいに低レベルでアクセスできる、みたいな笑
とりあえず、最低限のコードで go から mysqlのデータを表示するコードです。
ローカルに users というテーブルがあり、
カラムに id, name があるという前提です。
db名等は各自の環境に合わせてください。
main.go
package main import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" ) // User data type User struct { id int name sql.NullString } func main() { var userName = "root" var password = "rootroot" var dbAddress = "127.0.0.1:3306" var dbName = "hogedb" dataSource := fmt.Sprintf("%s:%s@tcp(%s)/%s", userName, password, dbAddress, dbName, ) db, err := sql.Open("mysql", dataSource) if err != nil { panic(err.Error()) } defer db.Close() rows, err := db.Query("SELECT id, name FROM users") if err != nil { panic(err.Error()) } defer rows.Close() for rows.Next() { var user User err := rows.Scan(&user.id, &user.name) if err != nil { panic(err.Error()) } var userName = "" if user.name.Valid { userName = user.name.String } fmt.Println(user.id, userName) } err = rows.Err() if err != nil { panic(err.Error()) } }
go言語でおすすめ書籍は以下です。