登录
首页 >  Golang >  Go问答

防止单引号在插入SQL时产生的方法

来源:stackoverflow

时间:2024-02-10 16:27:23 179浏览 收藏

对于一个Golang开发者来说,牢固扎实的基础是十分重要的,golang学习网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《防止单引号在插入SQL时产生的方法》,主要介绍了,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!

问题内容

我正在尝试这样插入:

query := `insert into logs (event_raw) format jsoneachrow {"event_raw": "?"}
_, err := s.db.execcontext(ctx, query, event)

其中事件是字符串:

{\"id\":\"abcdefgh\"}

不幸的是,我收到错误,因为 ? 被替换为 '{\"id\":\"abcdefgh\"}' (用单引号括起来)

如何防止这种行为并只使用: {"event_raw": "{\"id\":\"abcdefgh\"}"}


正确答案


请参阅我的评论,但您可以尝试:

query := "INSERT INTO logs (event_raw) FORMAT JSONEachRow ?"
arg := fmt.Sprintf(`{"event_raw": "%s"}`, event)
_, err := s.db.ExecContext(ctx, query, arg)

理论要掌握,实操不能落!以上关于《防止单引号在插入SQL时产生的方法》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>