PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Apakah kesalahan yang dikembalikan oleh db.Exec(...) memiliki kode?

lib/pq paket dapat mengembalikan kesalahan jenis *pq.Error , yang merupakan struktur. Jika ya, Anda dapat menggunakan semua bidangnya untuk memeriksa detail kesalahan.

Begini caranya:

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 memiliki bidang berikut:

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
}

Arti dan kemungkinan nilai dari bidang ini khusus untuk Postres dan daftar lengkapnya dapat ditemukan di sini:Bidang Pesan Kesalahan dan Pemberitahuan



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara mendapatkan nama zona waktu saat ini di Postgres 9.3?

  2. Panggil prosedur tersimpan Postgres SQL Dari Django

  3. Kueri Basis Data Asinkron dengan PostgreSQL di Node tidak berfungsi

  4. Postgres COPY TO / FROM A FILE sebagai non superuser

  5. Bagaimana cara mengetahui partisi mana yang akan digunakan dalam partisi hash Postgres?