如何解决无法在Oracle SQLSQL Fiddle中声明变量
当我运行声明查询时,它总是给我错误。
DECLARE
the_variable date;
BEGIN
SELECT MIN("Start Date") INTO the_variable FROM "Employee_Master";
END;
ORA-06550:第2行,第20列:PLS-00103:遇到符号 预期以下之一时为“文件结束”::=。 (@%;不是 具有默认字符的空范围。
我不确定问题出在哪里。
解决方法
为我工作正常:
SQL> create table "Employee_Master" ("Start Date" date);
Table created.
SQL> insert into "Employee_Master" values (sysdate);
1 row created.
SQL> declare
2 the_variable date;
3 begin
4 select min("Start Date") into the_variable
5 from "Employee_Master";
6 end;
7 /
PL/SQL procedure successfully completed.
SQL>
但是,为什么,哦,你为什么让自己的生活悲惨?在使用Oracle时,避免双引号。如果这样做,在创建过程中,始终必须使用双引号并完全匹配字母大小写来引用表(和列)。
默认情况下,Oracle将所有内容大写存储,但是您可以根据需要使用任何方式引用这些对象(大写,小写,大小写混合-无关紧要)。但是,正如我所说的,双引号是必需的。
顺便说一句,您所附的屏幕截图显示了很多什么和一小部分 something 。你不能拍出更好的屏幕截图吗?
,在SQL Fiddle网站上,您需要告诉您将要使用PL / SQL,并且一条语句将以/
终止符结尾(而不是以;
半终止符结尾,结肠)。为此,您需要单击“查询终止符”按钮(“运行SQL”和“编辑全屏”按钮的右侧),并将其从 [;]
更改为 { {1}} 。
然后它将起作用:
Oracle 11g R2架构设置:
[/]
查询1 :
CREATE TABLE Employee_Master ( Start_Date DATE );
INSERT INTO Employee_Master ( Start_Date ) VALUES ( SYSDATE );
Results :
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。