2

我在 oracle 中有一个存储过程,我想从 cygwin 调用该过程。这是程序

CREATE OR REPLACE PROCEDURE greetings
AS
BEGIN
 dbms_output.put_line('Hello World!');
 END;

我在做这个

sqlplus -s system@orcl/oracle10g<<END
execute greetings();
commit;
exit;
END
4

3 回答 3

2

使用 SqlPlus 连接 Oracle,然后运行如下过程:

execute package_name.procedure_name (parameters...)

如果你想在 Windows shell 中调用 sqlplus:

@echo execute some_procedure | sqlplus username/password@databasename

(见这个问题

在 Unix 上,试试这个:

echo "execute <some_procedure>" | sqlplus -s username/password@host:1521/service 
于 2013-08-30T07:28:33.307 回答
0

sqlplus -s system/oracle10g@orcl @proc.sql 这很好用,其中 system 是我的 oracle 用户名 oracle10g 是我的通行证,orcl 是本地主机,proc.sql 是存储过程的文件名。我们必须做的是从shell转到特定目录然后执行这个脚本

于 2013-08-31T07:31:54.997 回答
0

尝试添加

set serveroutput on 

在执行问候()之前;

于 2013-08-30T13:48:22.597 回答