go语言连接mssql(sqlserver)数据库执行sql语句的坑
- go语言连接mssql安装驱动
- sql语句替换变量中出问题了
- 在看某一个视频时,替换语句是, db.Exec("delete from [user] where [id]=@id", sql.Named("id",u.id))
- 一直报错,go err: sql: expected 0 arguments, got 1
- 网上查找答案,发现go连接sqlserver都是自己拼接sql的,fmt.Sprintf(),这样是不安全,没有找到一个案例是用变量的
- 最后试了一下把@id换成,mysql一样的,db.Exec("delete from [user] where [id]=?", u.id) 没问题了
- 还有一个问题,sqlserver的sql语句,由太多的自定义的东西,由很多内置关键字,使用时要用中括号,例如
- insert into user values(?,?) 这里面user\name\age都是关键字,需要中括号
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 《HelloGitHub》第 106 期
· 数据库服务器 SQL Server 版本升级公告
· 深入理解Mybatis分库分表执行原理
· 使用 Dify + LLM 构建精确任务处理应用