Maison >développement back-end >Golang >Scannez le champ SQL de type DATE dans le champ go struct

Scannez le champ SQL de type DATE dans le champ go struct

王林
王林avant
2024-02-09 08:18:09778parcourir

将DATE类型的sql字段扫描到go struct字段中

Éditeur php Yuzai L'analyse des champs SQL de type DATE dans les champs go struct est une tâche courante, mais de nombreux développeurs rencontrent des difficultés dans le processus de mise en œuvre. Lorsque vous traitez des types de date, vous devez mapper les champs de date dans SQL avec les champs correspondants dans la structure go. Ce processus nécessite de prendre en compte la conversion du format de date et la manière de gérer des situations telles que des valeurs nulles et des dates invalides. Cet article présentera une méthode simple et efficace pour aider les développeurs à mener à bien cette tâche.

Contenu de la question

J'ai une bigquery Google qui a un champ de type DATE, pas DATETIME.

Comment représenter ce champ de la manière la plus naturelle possible au Go ?

J'ai essayé :

type Record {
    Date  string `bigquery:"the_date"`
}

Exécution schema 字段的 <code>iterator.Next(&record) 时出现错误,类型 DATE 的 the_date 无法分配给结构字段 Date of type string

J'ai également essayé d'utiliser les types time.Time 类型的日期以及 sql.NullTime et la même erreur s'affiche également pour ces deux types.

Je n'arrive pas à trouver quoi que ce soit en ligne sur la mise d'une simple valeur de date dans un membre de structure de base sans une sorte de formatage de chaîne.

Solution

Veuillez essayercivil.Date

type Record {
    Date  civil.Date `bigquery:"the_date"`
}

De la documentation Go BigQuery p>

STRING      string
BOOL        bool
INTEGER     int, int8, int16, int32, int64, uint8, uint16, uint32
FLOAT       float32, float64
BYTES       []byte
TIMESTAMP   time.Time
DATE        civil.Date
TIME        civil.Time
DATETIME    civil.DateTime
NUMERIC     *big.Rat
BIGNUMERIC  *big.Rat

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer