只是开始在生产中使用golang,并大量使用sqlbuilder找到了一些遗留代码。与sql字符串相比,我发现代码很难理解。
sb := sqlbuilder.NewSelectBuilder()
sb.Select("id", "name", sb.As("COUNT(*)", "c"))
sb.From("user")
sb.Where(sb.In("status", 1, 2, 5))
vs
sql:=`SELECT id, name, COUNT(*) AS c FROM user WHERE status IN (?, ?, ?)`
除了帮助sql语法外,我没有其他优势。
查询生成器(我认为它与sqlbuilder相同)允许创建可与任何受支持的数据库一起使用的查询,而不必担心数据库中SQL实现之间的差异。my Source
我希望这会有所帮助。问候Jorgon98