用于打印月份最后一天的sql过程
我正在尝试编写程序来打印月日 没有编译错误,但没有打印任何内容用于打印月份最后一天的sql过程,sql,oracle,Sql,Oracle,我正在尝试编写程序来打印月日 没有编译错误,但没有打印任何内容 CREATE OR REPLACE PROCEDURE P2 AS to_d date; BEGIN SELECT REP_DATE INTO to_d FROM cmpss_report_calender WHERE REPID='F2'; IF LAST_DAY(SYSDATE) =LAST_DAY(to_d) THEN dbms_output.put_line('');
CREATE OR REPLACE PROCEDURE P2 AS
to_d date;
BEGIN
SELECT REP_DATE
INTO to_d
FROM cmpss_report_calender
WHERE REPID='F2';
IF LAST_DAY(SYSDATE) =LAST_DAY(to_d)
THEN
dbms_output.put_line('');
ELSE
dbms_output.put_line(to_d);
end if;
END P2;
如果您使用的是sql plus,请执行以下操作
SET SERVEROUTPUT ON;
EXEC P2;
尝试在SET SERVEROUTPUT ON命令后保留一个空行。此外,SET SERVEROUTPUT ON是一个SQL Plus命令,因此请确保使用相同的命令。试试这个
CREATE OR REPLACE PROCEDURE P2 AS
to_d date;
BEGIN
SELECT REP_DATE
INTO to_d
FROM cmpss_report_calender
WHERE REPID='F2';
IF LAST_DAY(SYSDATE) =LAST_DAY(to_d)
THEN
dbms_output.put_line('');
ELSE
dbms_output.put_line(to_d);
end if;
END P2;
在执行过程之前将SERVEROUTPUT设置为ON
,在beginsysdate
之后添加这一行后,它显示无效,并且为日期格式。无需在此处使用更新
。@constantlearner将服务器输出设置为打开
是一个SQL*PLUS命令,而不是PL/SQL命令。编译过程不会运行它。如果你想查看输出,你必须运行它。我想打印下一年的结束日期,我可以更改什么我想30 8 2014我尝试添加个月