sql >> Databáze >  >> RDS >> Mysql

neplatná adresa paměti nebo nulová dereference golang databáze

Takže pád je způsoben tím, že ukazatel db je nulový. To znamená, že kód, který se pokouší použít toto připojení na řádku 40, způsobí paniku.

rows, errrows := db.Query(...

Ukazatel db je nulový, protože, jak Peter zdůraznil, http.ListenAndServe blokuje, což znamená nic poté, co poběží.

Zkuste spustit tento příklad lokálně, abyste viděli problém:

package main

import (
    "net/http"
)

func Group(res http.ResponseWriter, req *http.Request) {
    println("group handler")
}

func main() {
    http.HandleFunc("/group/", Group)
    err := http.ListenAndServe(":9001", nil)
    if err != nil {
      panic(err)
    }
    println("Running code after ListenAndServe (only happens when server shuts down)")
}

Neuvidíte zprávu Spuštěný kód.




  1. kombinovat jquery v php pro zobrazení sbalitelného seznamu načteného z databáze

  2. Jak najít duplicitní záznamy pomocí klauzule Seskupit podle a mít v SQL Server - SQL Server / Výukový program TSQL část 132

  3. Jaký je nejjednodušší způsob, jak extrahovat data začátku a konce sprintu z JIRA db?

  4. Oprava „Alespoň jeden z argumentů COALESCE musí být výraz, který není konstantou NULL“ v SQL Server