SQLDeveloper:执行当前行而不突出显示

问题描述 投票:10回答:4

在Toad中,可以轻松地执行当前行而不突出显示它。比方说,你有一个这样的工作表:

select * from item -- cursor here


select * from product

当我点击CTRL+Enter时,我只想要执行光标的行。在SQLDeveloper中,如果没有第二行,CTRL+Enter可以正常工作。基本上,我想做与描述here相同,但由于某种原因,我找不到我正在使用的SQLDeveloper版本中的Tools -> Preferences -> Window Types -> SQL Window and check "AutoSelect statement"4.0.0.13,build Build MAIN: 13.80

好像,这个功能是在Oracle SQLDeveloper的4.x中取出的?

oracle-sqldeveloper
4个回答
13
投票

如果在sql语句之前有一个代码块(匿名或类似代码),请确保以正斜杠结束,以便CTRL +输入工作。

CTRL + Enter在下面的select sysdate语句中适用于下面的第二个示例,但不适用于第一个示例。

例1:

begin
NULL;
end;

select sysdate from dual; -- press CTRL+Enter on this statement

例2:

begin
NULL;
end;
/

select sysdate from dual; -- press CTRL+Enter on this statement

6
投票

对于那些也想知道同样事情的人来说,这就是你要做的事情。用;结束每个语句,它的工作原理。

select * from item
;

select * from product;

4
投票

实际上这里提到了最好的选择:http://forums.allroundautomations.com/ubb/ubbthreads.php?ubb=showflat&Number=46683

1)当光标在语句上时按Ctrl-F8。现在只执行当前语句。您可以通过首选项分配不同的键(工具>首选项>键配置>“SQL窗口:执行当前语句”)。

2)启用“AutoSelect语句”首选项(工具>首选项> SQL窗口)。现在,标准执行函数将自动选择光标下的当前语句并执行它。要执行多个语句,您现在必须首先在编辑器中显式选择它们,或使用Ctrl-F8。


0
投票

我也遇到了类似的情况,其中Ctrl + Enter快捷键停止工作以执行任何语句,并且必须突出显示整个语句以执行它。

它是如何工作的:(i)通过删除/注释掉工作表中的所有注释,即只在工作表中只有Sql语句,如果你在工作表中放了任何语句/注释以便理解,只需禁用那些和然后Ctrl + Enter开始工作。

PS:除此之外我没有做任何其他改动以使这个快捷方式工作。

干杯

© www.soinside.com 2019 - 2024. All rights reserved.