首页 > 解决方案 > 运行不带参数的 SQL 查询

问题描述

我在 Golang 中使用 'database/sql' 模块,尝试执行如下查询:

select * from users

请注意,它没有任何参数。但是,我使用的方法会强制您在参数中包含参数:

db.Query(query string, args)

所以我不得不写这样的东西:

db.Query("select * from users where 1=?", 1)

没有参数运行查询的方法是什么?

标签: sqlgo

解决方案


db .查询:

func (db *DB) Query(query string, args ...interface{}) (*Rows, error)

Query 执行返回行的查询,通常是 SELECT。args 用于查询中的任何占位符参数。

如果你真的在使用database/sql包,那么args参数是variadic

函数签名中的最终传入参数可能具有以 ... 为前缀的类型。具有这种参数的函数称为可变参数,并且可以使用该参数的零个或多个参数来调用。

所以,这样做的方法很简单:

db.Query("select * from users")

推荐阅读