在GolandIDE中使用非标准SQL包时的语法高亮SQL查询
使用 Goland 时,根据我连接的数据源获取 SQL 语法突出显示和自动完成非常有用。不幸的是,这似乎只在我使用标准 Go sql 包时有效,而在我使用有效包装 sql 包调用的自定义包时不起作用。我想知道是否可以告诉 Goland 特定的函数/参数实际上是 SQL 查询/SQL 语句。
这是 Goland 的示例,允许对 sql.DB 结构上的方法进行 SQL 补全,而不允许在自定义 query.ReadOnlyDB 结构上补全:
回答
目前,您可以//language=SQL在语句前指定注释:
package main
import "fmt"
func main() {
//language=SQL
str := "SELECT USERNAME FROM EXAMPLE"
fmt.Println(str)
}
有一些改进 GoLand 中 SQL 突出显示的票证,您可以遵循它们:
- GO-10398。自定义包/代理的 SQL 突出显示。
- GO-10011。将 SQL 自动注入以 SQL 查询(SELECT、CREATE、DELETE 等)开头的字符串。