首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PLSQL中的提示用户

PLSQL中的提示用户
EN

Stack Overflow用户
提问于 2011-11-05 23:32:18
回答 4查看 1.2K关注 0票数 1

我的任务是编写一个PLSQL模块将数据插入到数据库中。在某种情况下,它可能需要额外的信息,并且应该提示用户提供更多的细节。这应该直接在PLSQL中完成,并且语句直接来自赋值。

我研究了这个话题,发现有些人说这不能用PLSQL来做?但是ACCEPT PROMPT函数确实存在。

代码语言:javascript
复制
ACCEPT v_string PROMPT 'Enter your age: ';

虽然这可以直接在SQLPlus中运行,但在PLSQL中不能运行,因为它给了我这个错误:

代码语言:javascript
复制
PLS-00103: Encountered the symbol "V_STRING" when expecting one of the following: := . ( @ % ;

谁能提供一些洞察力,说明我应该如何从PLSQL中询问用户,只有在某个条件为真时(当你从数据库中获得其他东西时,该条件才会被检查)。为了澄清,我只需要关于如何接受输入的帮助。

耽误您时间,实在对不起。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-11-06 00:46:00

有一个trick可以让你做这样的事情,但是(a)这有点麻烦,(b)你需要登录到数据库服务器本身,(c)它只能在Linux (也许还有其他风格的Unix)上运行。

通常,不能在PL/SQL中请求用户输入,尤其是在连接到远程计算机上的数据库时。不是你的作业错了,就是你误解了它。

PL/SQL程序是为在数据库服务器上运行而设计的,因此在运行过程中要求用户输入是没有意义的。使用ACCEPT命令,SQL*Plus可以在客户端运行脚本时要求用户输入。然后,SQL*Plus将替换为在将SQL或PL/SQL发送到数据库之前输入的值。

票数 1
EN

Stack Overflow用户

发布于 2021-09-28 05:43:30

好吧,因为它不是SQL的一部分,而是你使用的开发工具,下面是我所知道的:

  • SQL*Plus : Variable
  • SQL Developer:您可以创建一个过程,也可以使用:Variable来提示插入参数
票数 1
EN

Stack Overflow用户

发布于 2019-03-13 23:10:40

我检查并尝试了以下可能对你有帮助的事情。这只是我试过的一个例子。您可以实现自己的逻辑。

代码语言:javascript
复制
declare
c1 varchar2(50);
begin
c1:='&enter_value';
dbms_output.put_line(c1);
exception
when others then
dbms_output.put_line(sqlerrm);
end;

'&‘将帮助您提示并要求用户输入。一旦用户输入了一些输入,它就会被赋值给变量,你可以随心所欲地使用变量。

希望这能对你有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8021184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档