我尝试连接字符串以更新数据库,但无法捕获值 使用sprint %s
if email.Event == "dropped" || email.Event == "bounce" || email.Event == "deferred" {
email.Reason = email.Reason
var reason = email.Reason
var sgID = email.SgMessageId
var teste = fmt.Sprintf("update email set erro = concat(erro,' ',%s) where id_sendgrid=%s", reason, sgID)
fmt.Println(teste)
_, err := h.DB.Exec(teste)
if err != nil {
log.Fatal("Erro ao realizar upload no email com evento ERROR")
}
fmt.Println(email.Reason, email.SgMessageId, email.Response)
}
我可以捕获id_sendgrid值,但无法在此处获取此部分的值--〉(错误,' ' %s)
这个错误出现在我的控制台:
更新电子邮件集错误= concat(错误,' ',)+其中id_sendgrid= 14 c5 d 75 ce 93
1条答案
按热度按时间2w3rbyxf1#
不要使用Sprintf生成数据库查询。请改用参数化查询:
$1
、$2
等将自动替换为Exec的其他参数。