【发布时间】:2013-11-11 06:11:32
【问题描述】:
普遍的共识似乎是直接查询语句不允许参数,而准备语句允许。
但是在 Go 的 database/sql 包中,您可以使用 ODBC 参数并将参数发送到诸如 db.QueryRow() 和 db.Query() 之类的东西。所以看起来它们在功能上是等效的。
话虽如此,那么首先创建一个语句,然后执行它有什么意义呢?假设语句首先针对数据库进行编译——这不会增加负载并因此降低性能,因为您要添加额外的行程吗?既然你可以从 Query/QueryRow 中获取参数,那岂不是让语句成为一件坏事?
【问题讨论】: