因此,我有一个相当复杂的查询,我正在尝试调试它,但举一个简单的例子,假设我有这样的查询:q := "SELECT id FROM users WHERE timestamp > ? AND timestamp < ?"我将按照通常的方式对此进行 Query() ,例如db.Query(q, 1546300800,1561127488)我想记录/println/任何(用于调试)插值查询,最终得到SELECT id FROM users WHERE timestamp > 1546300800 AND timestamp < 1561127488想知道这里是否有人对我有窍门。
1 回答
芜湖不芜
TA贡献1796条经验 获得超7个赞
在 Go 中则不然,因为它不进行插值,查询字符串和参数值都会发送到数据库服务器,由数据库服务器进行插值。因此,如果数据库服务器不提供这样的功能,那么您就不走运了。或者,您可以尝试搜索执行插值的第三方软件包,但是,如果您找到一个软件包,请记住,为了准确,它需要跟上目标服务器的版本,如果不这样做,您可能会看到以下日志:与正在执行的实际查询不匹配
我无法使用工具来完成此任务,因为 go 从来没有插值查询。坚持将非插值查询与一堆参数一起吐出。
- 1 回答
- 0 关注
- 104 浏览
添加回答
举报
0/150
提交
取消