package main import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" ) func connectMysql() (*sql.DB, error) { db, err := sql.Open("mysql", "root:password@tcp(127.0.0.1:3306)/golang_user") if err != nil { panic(err.Error()) } return db, nil } func addUser(_login string, _password string, _userDescription string, _points int) { //do rejestracji uzytkownika // Insert do bazy Mysql Nowego użytkownika db, err := connectMysql() if err != nil { panic(err.Error()) } queryInsert := fmt.Sprintf(`INSERT INTO users ( login, password, userDescription, points )VALUES ( "%s", "%s", "%s", "%d" )`, _login, _password, _userDescription, _points) fmt.Printf(queryInsert) insert, err := db.Query(queryInsert) if err != nil { panic(err.Error()) } fmt.Println(insert) } func getAllUsers() []User { //pobiera wszystkich uzytkownikow - do wysiwetlenie na front /* --------------------- users ----------------------- userId int `json:"id"` // do pobierania z GET login string `json:"login"` password string `json:"password"` userDescription string `json:"userDescription"` points int `json:points` */ allUsers := []User{} db, err := connectMysql() result, err := db.Query("SELECT * FROM users") if err != nil { panic(err.Error()) } for result.Next() { var user User err = result.Scan(&user.userId, &user.login, &user.password, &user.userDescription, &user.points) if err != nil { panic(err.Error()) } allUsers = append(allUsers, user) } return allUsers } func main() { fmt.Println("Go Mysql Tutorial") // db, err := connectMysql() // // db, err := sql.Open("mysql", "root:password@tcp(127.0.0.1:3306)/golang_user") // fmt.Println(reflect.TypeOf(db)) // fmt.Println(reflect.TypeOf(err)) addUser("login10", "password", "userDescription", 123) allUsers := getAllUsers() fmt.Println(allUsers) }