带有表名bindvar的Postgres sqlx准备语句

我正在尝试使用 Golang sqlx 库创建一个准备好的语句。我想让表名是一个 bindVar

stmt, err := stmtTx.Preparex("SELECT * FROM $1 WHERE question_id=$2;")

然而,这给了我一个语法错误/$1/。我可以不为表名使用绑定变量吗?


慕盖茨4494581
浏览 173回答 2
2回答

POPMUISE

表名不能使用绑定变量吗?不,引文来源。参数只能用作数据值,不能用作标识符。因此,例如这是合理的:INSERT INTO mytable VALUES ($1);但这不起作用:INSERT INTO $1 VALUES (42);但是fmt.Sprintf如果需要,您可以使用表名,但将 $1, $2, ... 作为数据值。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go