SQLDeveloper是否支持执行脚本?

时间:2008-11-14 01:40:01

标签: oracle sqlplus oracle-sqldeveloper

我今天试图遵循一些指示,并以评论

开头

REM  In SQLPlus I manually copy in each line and execute it.

这很好,我没有SQLPlus,我有SQLDeveloper。粘贴的行是以下类型:


@\\server\dir\dir\dir\commandfile1.txt;
COMMIT;

...等

当我在SQL窗口中尝试时,它不喜欢它。我手动打开并粘贴在命令中,对此也不满意。 (我是否提到我对这个应用程序也不是很好,也不是Oracle,但其他人今天都出来了?)那里的文件以代码开头:


rem
set echo on
rem
execute procedure_name ('parameter1', 'parameter2');

一位同事确实拥有SQLPlus,我们一起解决了它。但是,有没有办法让我用SQLDeveloper做到这一点,所以如果他也出局我就不会卡住?

6 个答案:

答案 0 :(得分:61)

在SQL Developer中运行脚本:

@"\Path\Scriptname.sql"

(如果有空格,您只需要引号)

您可以设置默认路径:工具菜单>偏好>数据库>工作表>选择要查找脚本的默认路径

答案 1 :(得分:2)

我正在查看帮助文件,并在SQL Developer Concepts and Usage->使用SQL Worksheet->脚本运行器中找到了如何执行此操作。

基本上,你必须在文件名之前加上@。例如@C:\ MyScript \ Script.sql。

然后你可以用这种方式运行一批。请注意,该命令似乎不喜欢文件路径中的空格。

答案 2 :(得分:1)

对于您需要运行的每个文件,找到它并将其放入SQLDeveloper。运行脚本(F5),然后提交(F11)。这适用于某些脚本,但不是全部。

答案 3 :(得分:0)

最近,SQL Developer附带了另一个名为sqlcl的工具。这有点像SQLPlus,但实际上是使用SQL Developer中的一些位来提供兼容的命令行/脚本类型接口。

您可以使用它来执行sqlplus样式命令,而无需对抗SQL Developer样式GUI的额外内容,这会让人感到困惑。

在SQL Developer所在的任何地方寻找它。如果您没有,可以下载并将其部署到sqldeveloper文件夹中。

答案 4 :(得分:0)

您可以使用sqlcl来完成此操作,就像在命令行中使用SQL PLUS一样:

sqlcl user/password@host:port:sid @file.sql

文件应位于sqlcl所在的目录中。

如果您尝试对sql文件执行很多指令,则此解决方案是最佳选择。

答案 5 :(得分:-2)

这样就可以了:

begin
    procedure_name ('parameter1', 'parameter2');
end;
/