oracle - 尝试执行 for 循环以查找“前十个数字的总和”时遇到错误“'(' expected”
问题描述
我正在尝试在 PL SQL 中编写一个简单的 for 循环程序来查找从 1 到 10 的前十个数字的总和。
早些时候我已经在 declare 中初始化了变量。但是,当我遇到错误时,我在声明部分中声明它并在开始部分中初始化,希望这可能是问题所在。但是我仍然收到错误
SQL> declare
2 sum integer;
3 begin
4 sum := 0;
5 for k in 1..10
6 loop
7 dbms_output.put_line(sum+k);
8 end loop;
9 end;
10 /
dbms_output.put_line(sum+k);
*
ERROR at line 7:
ORA-06550: line 7, column 25:
PLS-00103: Encountered the symbol "+" when expecting one of the following:
(
解决方案
当您使用 oracle 保留字(如 sum)时,请不要,但如果您确实使用它们,请在双引号内使用它们,如下所示:
declare
"sum" integer;
begin
"sum" := 0;
for k in 1..10
loop
dbms_output.put_line("sum"+k);
end loop;
end;
这样就可以了。希望这可以帮助!
推荐阅读
- java - 如何从 OpenStreetMaps API 的给定地址获取坐标
- aem - 在 AEM 6.5 中设置 SSL 的 Curl 命令
- php - 无法连接到 MySQL-DB:意外的 T_STRING
- r - 在闪亮的小工具中创建全屏 DT 表小部件
- java - 如何以编程方式挂断奥利奥及以上的电话?
- node.js - 带有 Ghost 源的 Gatsby Lunr 插件
- r - 按新年拆分日期行
- unity3d - 将 Rigidbody.AddForce 与 NavmeshAgent 一起使用
- oracle - 在多级嵌套表中插入时如何修复“ORA-01401:插入的值对于列而言太大”
- sql - Oracle SQL:如何使用 CHECK 约束不允许重叠预订日期