sql - 为什么我的 SQL 占位符没有被替换(使用 Go pq)?

标签 sql postgresql go

根据文档,我正在这样做

var thingname string = "asdf";
var id int
err = database.QueryRow("SELECT id from things where thing = ?", thingname).Scan(&id)

但是 Postgres 说

ERROR:  syntax error at end of input at character 41
STATEMENT:  SELECT id from things where thing = ?

我看不出我所做的与演示代码有多大不同。我正在使用 pq .

最佳答案

确切的语法取决于数据库。

使用

err = database.QueryRow("SELECT id from things where thing = $1", thingname).Scan(&id)

关于sql - 为什么我的 SQL 占位符没有被替换(使用 Go pq)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18577855/

相关文章:

mysql - 选择最后一天时间范围为早上 7 点到午夜之间的所有 MySQL 记录

database - 如何在 postgresql 生成的序列之前为字符串添加前缀?

go - 有没有办法生成一段用特定字符填充的字节?

sql - Postgresql - 在多个表上执行左连接时遇到问题

Unix 时间戳的 PostgreSQL 字段类型?

http.Get() 从 url 获取图像并写入 GridFS

google-app-engine - 如何在 App Engine 上使用 go-sql-driver/mysql 连接到 Google Cloud SQL?

mysql - 将一个表复制到另一个表并添加一个作为源表名的列

在 VIEW 中使用的 Mysql 函数不会返回正确的结果。

sql - SQL Server中如何合并不同的行?