Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var (
- DB_INSTANCE *sql.DB
- )
- ...
- configFile := GetConfig()
- user := configFile.DatabaseReaderHost.DatabaseUser
- password := configFile.DatabaseReaderHost.DatabasePassword
- dbName := configFile.DatabaseReaderHost.DatabaseName
- connectionName := "project-id:region:instance-name"
- if appengine.IsDevAppServer() {
- db, err := sql.Open("mysql", fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?parseTime=true",
- user,
- password,
- configFile.DatabaseReaderHost.DatabaseHost,
- configFile.DatabaseReaderHost.DatabasePort,
- dbName))
- if err != nil {
- panic(err)
- }
- DB_INSTANCE = db
- return nil
- } else {
- dbn, err := sql.Open("mysql", fmt.Sprintf("%s:%s@cloudsql(%s)/%s", user, password, connectionName, dbName))
- if err != nil {
- panic(err)
- }
- DB_INSTANCE = dbn
- return nil
- }
- func TestDatabaseHandler(w http.ResponseWriter, r *http.Request) {
- w.WriteHeader(http.StatusOK)
- var name string
- err := DB_INSTANCE.QueryRow("SELECT name FROM names WHERE id = ?", 1).Scan(&name)
- if err != nil {
- if err == sql.ErrNoRows {
- PrintSingleResponseJson(w, "error", fmt.Sprintf("no rows found"))
- } else {
- Log(r, fmt.Sprintf("Could not connect to database: %v", err))
- PrintSingleResponseJson(w, "error", fmt.Sprintf("could not connect to database: %s", err))
- }
- return
- }
- PrintSingleResponseJson(w, "success", fmt.Sprintf("%s", name))
- }
Add Comment
Please, Sign In to add comment