组件分享之后端组件——基于Golang的SQL解析器sqlparser

背景

近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件。欢迎大家进行持续关注。

组件基本信息

内容

本节我们分享一个基于Golang的SQL解析器sqlparser

使用方式如下:

1、安装

go get github.com/marianogappa/sqlparser

2、使用案例

package main
import (
    "fmt"
    "log"
    "github.com/marianogappa/sqlparser"
)
func main() {
    query, err := sqlparser.Parse("SELECT a, b, c FROM 'd' WHERE e = '1' AND f > '2'")
    if err != nil {
        log.Fatal(err)
    }
    fmt.Printf("%+#v", query)
}

当不同的SQL错误,将返回特定的错误信息,具体可以查看其官方提供的README

本文声明:
知识共享许可协议
本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。