Golang Mariadbのcolumnに、条件、値が”null”の時にNULLを書き込む

1.NULLを書き込むには、sql.NullString {} を使う
・変数のtypeはinterface {]を使う

2.条件として、値が”null”の時にNULLを書き込む

_r.Username = r.PostFormValue("username");

if _r.Username == "null" {
   _r.Username = sql.NullString{};
}

3.code


type Page_s struct {
   Serial          string      `json:"serial"`
   Username        interface{} `json:"_username"`
}
・・・

var _r Page_s ;

_r.Serial   = r.PostFormValue("serial");
_r.Username = r.PostFormValue("username")

if _r.Username == "null" {
   _r.Username = sql.NullString{};
}

update( db *sql.DB, _r Page_s );
・・・

func update( db *sql.DB, _r Page_s ){

   SQL := `
      UPDATE
         procure_admin
      SET
         username = ?
      WHERE
         serial = ?
    `;

    s := bytes.NewBufferString("");
    s.WriteString(SQL);

    _, err := db.Exec(s.String(), _r.Username , _r.Serial);
   if err != nil {
       panic(err.Error());
   }
}