【发布时间】:2015-10-17 00:51:46
【问题描述】:
我想多次从用户那里获取输入,为此我正在使用替换变量但无法获得所需的输出。我希望 oracle 根据循环条件多次要求用户输入。例如,
declare
names varchar2(100);
begin
for j in 1..3 loop
names:='&i';
dbms_output.put_line(j ||names);
end loop;
end;
/
----------输出------
1jack
2jack
3jack
请提出一些替代方案。
【问题讨论】:
-
第一句的措辞有点混乱。
-
你不能合理。 PL/SQL 没有提示用户输入的功能。这必须由客户端应用程序完成。 SQLPlus 具有非常有限的提示输入的功能,并且它没有编写循环代码的功能。您可以构建一个非常不寻常/复杂的 SQLPlus 脚本来模拟循环,但编写批处理文件/shell 脚本/perl 脚本/其他提示输入并向数据库发送查询的东西会容易得多.
-
@ppperry :如果我运行此块,Oracle 将要求用户提供输入,该值将存储在变量名称中,并在上述情况下显示三次。我希望 oracle 询问用户输入三次,以便打印不同的名称。请帮助我。
标签: oracle plsql oracle11g oracle10g plsqldeveloper