在Oracle存储过程中提示

时间:2012-01-11 11:33:34

标签: oracle stored-procedures plsql

我想让我的sql互动。首先,我想显示项目列表,然后想要接受用户的选择,并根据选择显示结果。

但是当我尝试它时,我会在显示列表之前获得选择提示。

有人可以帮帮我吗?

我想要输出这样: -

国家名单: (通过调用程序获取此列表)

NO。 NAME

  1. CANADA
  2. US
  3. UK
  4. INDIA
  5. JAPAN
  6. 中国
  7. 选择要替换的国家:(这将保存在变量中,比如var1)

    NO。 NAME

    1. CANADA
    2. US
    3. UK
    4. INDIA
    5. JAPAN
    6. 中国
    7. 选择要替换的国家:(这将保存在变量中,比如var2)

      接受值后,我想用var2替换var1

      所以现在有人可以告诉我我应该做些什么吗?

2 个答案:

答案 0 :(得分:1)

我认为你想要一个接受用户输入的SQLplus脚本。尝试设置批处理文件并使用“接受变量提示消息”方法。只是要小心sql注入攻击(这不是一个很好的数据输入方法btw)。

有关在SQLPlus中与用户通信的Oracle文档,请参阅here

答案 1 :(得分:0)

如果您的环境是命令行,例如SQL * PLUS,您可以使用加号语句来完成此操作。我在一个普通的.sql文件中做了类似的,作为一个5分钟的创可贴。

PROMPT基本上会将文字回显到屏幕上。 ACCEPT允许您接受用户输入。

要显示选项列表,只需运行一个简单的选择。

一旦您接受了输入,请从那里传递给程序。