這是一個獲取法國諺語的函數(shù):func (r *proverbRepo) SelectFrByDegree(search string) (proverbs []domain.Proverb, err error) { rows, err := r.Db.Query(context.Background(), `SELECT ID, proverb FROM proverbs_fr WHERE proverb % $1 ORDER BY proverb <-> $1 DESC LIMIT 5 `, search) if err != nil { return } for rows.Next() { var prov domain.Proverb err = rows.Scan(&prov.ID, &prov.Literal) if err != nil { return } proverbs = append(proverbs, prov) } return}有時我想從 per say proverbs_bzh 表中獲取另一個諺語表。是否可以使用變量名獲取不同的表?SELECT * FROM $1例如...
1 回答

小唯快跑啊
TA貢獻(xiàn)1863條經(jīng)驗(yàn) 獲得超2個贊
這不是綁定變量的意圖。它應(yīng)該用于查詢重用的數(shù)據(jù)輸入。如果表未知,則無法解析查詢并重用執(zhí)行計(jì)劃。因此,您的選擇是替換字符串。
警告:如果表名來自外部源,請務(wù)必檢查它是否是正確的標(biāo)識符(提示:防止 SQL 注入)
- 1 回答
- 0 關(guān)注
- 137 瀏覽
添加回答
舉報(bào)
0/150
提交
取消