sql >> データベース >  >> RDS >> PostgreSQL

db.Exec(...)によって返されるエラーにコードがありますか?

    lib/pq パッケージは、タイプ *pq.Errorのエラーを返す場合があります。 、これは構造体です。含まれている場合は、そのすべてのフィールドを使用して、エラーの詳細を調べることができます。

    これがその方法です:

    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 次のフィールドがあります:

    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
    }
    

    これらのフィールドの意味と可能な値はPostres固有であり、完全なリストは次の場所にあります:エラーおよび通知メッセージフィールド



    1. SQLの完了。成功と失敗の物語

    2. MySQL番地あいまい検索

    3. SQLサーバーで重複する範囲を確認するためのクエリ?

    4. ブール値を使用してMySqlでJSONオブジェクトを作成するにはどうすればよいですか?