我保存了一个sql文件,我想打开并从我在DataGrip中连接的数据库中获取结果。当我打开文件时,它将其作为文件范围打开,而不是作为控制台范围,我无法对数据库运行sql。我必须打开一个新的数据库控制台,将我的SQL复制到数据库控制台,然后从那里运行它。对SQL进行任何更改,并将其保存回文件。我只想将文件作为控制台打开。
我必须做错了。我错过了什么?如何在DataGrip中从磁盘打开SQL文件并以类似控制台的方式执行查询?
示例:我有一个SQL文件:“customer.sql”,其中包含“从客户中选择前10名*”。当我打开“customer.sql”时,它会在DataGrip中作为文件打开,没有执行或关联的数据库关系。我想针对我的一个数据库连接运行“从客户中选择前10 *”的“customer.sql”内容。对查询“从客户中选择前11 *”进行更改并将其保存回“customer.sql”
答案 0 :(得分:4)
DataGrip 2017.2中有一个新选项:附加控制台。
您可以通过Ctrl + Shift + A或打开文件的上下文菜单找到。执行此操作后,可以对控制台运行此文件。如果要在多个数据源中运行相同的脚本,切换控制台将非常有用。
答案 1 :(得分:3)
以下是DataGrip 2016.3的“运行SQL脚本文件”help page的文档,用于运行您自己的文件并获取结果,就像从控制台运行SQL一样。
您的文件的任何更改似乎都会自动保存,即使脚本未执行,然后通过“本地历史记录”提供以前的版本,这是大多数(如果不是全部)JetBrains IDE的功能。
运行SQL文件中包含的单个语句时: - 语句可以包含参数。在运行此类语句之前,DataGrip会要求您指定参数值。
另一方面: - 语句一次只运行一个数据源。
将光标放在要执行的语句中。 如果要运行多个语句,请选择(突出显示)必要的语句。
执行以下操作之一: - 按 Ctrl + Enter 或从上下文菜单中选择执行。 - 按 Alt + Enter 或单击Intention Bulb,然后选择在控制台中运行查询。
选择要使用的数据库控制台。
使用所选控制台执行一个或多个语句。相应的控制台与文件关联。相关控制台的名称显示在状态栏上。