Mysql
 sql >> Base de données >  >> RDS >> Mysql

Golang Insérer NULL dans sql au lieu d'une chaîne vide

Dans mon code, j'ai une fonction qui convertit une chaîne en sql.NullString

func NewNullString(s string) sql.NullString {
    if len(s) == 0 {
        return sql.NullString{}
    }
    return sql.NullString{
         String: s,
         Valid: true,
    }
}

Ensuite, chaque fois que j'utilise Exec J'enveloppe mes chaînes qui pourraient être NULL dans la base de données avec le NewNullString fonction.

db.Exec(`
  insert into
      users first_name, last_name, email
      values (?,?,?)`,
  firstName,
  lastName,
  NewNullString(email),
)