标签: mysql go
在我的Go应用中,我希望能够在执行之前分析SQL查询。 我想得到: 类型(更新,插入,删除等)。这很容易,但后续步骤却不容易。 受影响的表, 要更新的列(在插入/更新时) 最重要的-条件,列和值列表。
是否有用于此的go库?
传递sql查询并获取有关此查询的信息的某些结构
答案 0 :(得分:0)
是的,您有sqlparser个golang。
sqlparser
请注意,sqlparser已从数据库集群系统vitess中拉出
vitess
您可以像使用sql解析器一样
reader := strings.NewReader("INSERT INTO table1 VALUES (1, 'a');") tokens := sqlparser.NewTokenizer(reader) for { stmt, err := sqlparser.ParseNext(tokens) if err == io.EOF { break } // Do your logics with the statements. }