sql >> Databáze >  >> RDS >> PostgreSQL

Má chyba vrácená db.Exec(...) kód?

lib/pq balíček může vracet chyby typu *pq.Error , což je struktura. Pokud ano, můžete použít všechna jeho pole ke kontrole podrobností o chybě.

Lze to udělat takto:

if err, ok := err.(*pq.Error); ok {
    // Here err is of type *pq.Error, you may inspect all its fields, e.g.:
    fmt.Println("pq error:", err.Code.Name())
}

pq.Error má následující pole:

type Error struct {
    Severity         string
    Code             ErrorCode
    Message          string
    Detail           string
    Hint             string
    Position         string
    InternalPosition string
    InternalQuery    string
    Where            string
    Schema           string
    Table            string
    Column           string
    DataTypeName     string
    Constraint       string
    File             string
    Line             string
    Routine          string
}

Význam a možné hodnoty těchto polí jsou specifické pro Postres a úplný seznam lze nalézt zde:Pole chybových zpráv a zpráv



  1. Jak najít časovou deltu řádku datatime v mysql?

  2. Získávání dat mezi rozsahem dat

  3. Vložit hodnoty pole vložit do jednoho ID do databáze mysql pomocí php a PDO

  4. Zjistěte, zda byl příkaz REPLACE nahrazen nebo jen vložen do MySQL