2

我是 PL/SQL 的新手,我正在尝试执行我在课程中学到的命令。

VARIABLE area NUMBER
DECLARE
  radius NUMBER(2) := &s_radius;
  pi CONSTANT NUMBER := 3.14;
BEGIN
  :area := pi * radius * radius;
END;

我知道我可以使用 SqlPlus 运行它,但我记得我的老师是使用 Application Express 从 Web 浏览器运行它的。我尝试在那里运行相同的命令,在 HOME > SQL > SQL 命令,但我不断收到错误

“ORA-00900:无效的 SQL 语句”

.
您能否帮我在 Application Express 中运行它,或者指出我可以使用编辑器运行这些课程练习的方法?
谢谢!

4

1 回答 1

2

Apex 不会以相同的方式使用变量,因为它并不真正运行 SQLPlus(虽然看起来很相似)。听起来您从课堂上获得的示例都旨在用于命令行版本 - 而不是浏览器版本。因此,area不会s_radius被人知道。

但是,您可以通过重写示例来解决这个问题:

DECLARE
  area NUMBER;
  radius NUMBER(2) := 4; -- I have no idea what value you used.
  pi CONSTANT NUMBER := 3.14;
BEGIN
  area := pi * radius * radius;
  dbms_output.put_line ('Area is ' || area);
END;
于 2010-04-23T18:30:18.973 回答