作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我如何使用 go standard 构建它? sql包让其他人可以阅读吗?我需要添加很多字段。
result, err := db.Exec(
"INSERT INTO MyTable (name, age, ...ALLLOOOT...) VALUES ($1, $2, ...ALLLOOOT...)",
"gopher",
27,
...ALLLOOOT...
)
编辑:奖金问题,你能使用这样的东西并从 db:"..."
中提取字段名称吗?
type MyTable struct {
Age int64 `db:"age" json:"age"`
Name string `db:"name" json:"name"`
....
}
最佳答案
有不同的方法可以做到这一点,我做过的一种方法是创建键和值的数组,然后您可以使用它们来迭代和构建带有占位符的查询。
然后您将使用可变参数来填充占位符。
看起来像这样
keys := []string{"your", "keys", ...}
values := []interface{}{1, "two", ...}
placeholders := make([]string, len(values))
for idx := range values {
placeholders[idx] = "?"
}
query := fmt.Sprintf("INSERT INTO (%s) VALUES (%s)", strings.Join(keys, ", "), strings.Join(placeholders, ", "))
result, err := db.Exec(query, values...)
这个 Playground 展示了使用 fmt.Printf
完成的类似操作
关于go - INSERT INTO MyTable(姓名,年龄,...),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34757726/
我是一名优秀的程序员,十分优秀!