IntelliJ IDEA在SQL中使用语言注入

2018-06-05 10:26 更新

在SQL中使用语言注入

此功能仅在Ultimate版本中受支持。
以下内容仅在安装和启用 IntelliLang、数据库工具和 SQL 插件时有效!

对于SQL中的语言注入,IntelliJ IDEA提供了以下附加功能:

  • 自动注入XML和JSON数据类型,请参阅“对XML和JSON使用自动注入”部分。
  • 数据类型模式,请参阅“对用户定义的数据类型使用基于模式的注入”部分。

对XML和JSON使用自动注入

对于定义为XML和JSON类型的值,会自动注入相应的语言。

示例:

  1. 创建一个SQL文件并在编辑器中打开它。
  2. 指定PostgreSQL作为该文件的SQL方言。
  3. 将以下内容复制到您的SQL文件中:
    CREATE TABLE test (
    my_xml XML DEFAULT ''
    );
  4. 将光标放在引号之间。
  5. 检查灯泡菜单(Alt+Enter):如果有Edit XML Fragment命令,这意味着XML已被自动注入。

对用户定义的数据类型使用基于模式的注入

您可以创建模式 - 例如用于用户定义的数据类型 - 并将这些模式与语言相关联。因此,当IntelliJ IDEA遇到与该模式匹配的数据类型时,它将注入为该模式指定的语言。

在下面的例子中,我们将为以DATA结尾的数据类型创建一个模式,并将该模式​​与XML相关联。

示例:

  1. 在你的SQL文件中,使用MYDATA来替换XML。
  2. 将光标放在引号之间。
  3. 按Alt+Enter。请注意,菜单中不再有Edit XML Fragment(编辑XML片段)命令。选择按类型注入,然后选择XML(XML文件)。
  4. 在打开的对话框中,在类型模式(Type pattern)字段中指定:(?i).*DATA。(类型模式使用正则表达式指定,在本例中,(?i)打开不区分大小写的模式; .*代表任意数量的任何字符。)
  5. 再次检查灯泡菜单(Alt+Enter)。“编辑XML片段(Edit XML Fragment)”命令已经变得可用,这意味着XML已经注入了MYDATA类型的值。
  6. 要删除刚刚创建的模式(如果您不需要它),请打开“设置/首选项(Settings / Preferences)”对话框(例如Ctrl+Alt+S),转至“编辑器|语言注入(Editor | Language Injections)”页面,查找和删除模式。
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号