Oracle SQL Developer - Ctrl+Enter运行整个工作表而不是当前行

svgewumm  于 2023-05-06  发布在  Oracle
关注(0)|答案(5)|浏览(172)

我正在使用Oracle SQL Developer4.0.3.16,几周以来,快捷键Ctrl+Enter不再执行当前行或语句,除非我突出显示它,而是运行整个工作表。使用顶部的绿色按钮,它应该只运行当前行,结果是相同的行为(除了当该行突出显示时)。将鼠标悬停在按钮上仍会显示工具提示“Run Statement(Ctrl+Enter)”。我的一位同事也遇到了这个问题。
我还查看了Preferences-〉Shortcut Keys菜单,但运行语句的快捷键设置仍然是Ctrl+Enter。
谁知道我的SQL Developer有什么问题?

txu3uszq

txu3uszq1#

SQL Developer中的每个SQL语句都应该有分号;,否则ctrl+Enter将执行整个工作表。
例如,假设我有两个SQL语句:

  1. select * from emp不带分号;
  2. UPDATE EMP SET DEPT_ID=10;带分号;
    然后它将同时执行这两个语句,因为每个SQL语句后面都应该有分号。
gywdnpxw

gywdnpxw2#

我也面对过。通常你会在你试图执行的SQL代码上面有PL/SQL块。注解掉PL/SQL块DECLARE,开始,但不以分号结尾,从而导致此问题。因此,在工作表中注解PL/SQL块应该可以解决您的问题。

xdyibdwo

xdyibdwo3#

感谢here的回答:如果它不工作,甚至与分号后的行一样,它没有为我(Oracle SQL Developer3.2.20.10),你需要把一个'/'后的每个命令,如果你想执行他们都独立,例如:

blahblah;
/

blahblah;
/

把'/'当作真实的的终止符/分隔符。

jc3wubiy

jc3wubiy4#

我想我算是解决了。
由于我不是工作计算机的管理员,我无法安装新的客户端,所以我不久前下载了www.example.com版本的SQL Developer4.0.3.16,并从我的用户目录在本地运行它。同时,客户端4.0.3.16安装在操作系统上,当使用这个客户端时,我没有得到这个错误。谢谢你的帮助。

zlhcx6iw

zlhcx6iw5#

首选项-〉运行语句的快捷键菜单设置仍然是Ctrl+Enter。
如果你放一个“;”,并在SQL首选项中选择“AutoSelect语句”,它将只执行游标所在的SQL。

相关问题