Oracle过程错误(PLS-00428)

Jon*_*n P 5 sql plsql procedure oracle10g

这是错误消息:PLS-00428: an INTO clause is expected in this SELECT statement.同时,这是测试显示系统日期的过程:

CREATE OR REPLACE 
PROCEDURE "TEST_PROCEDURE"
AS
BEGIN
    SELECT SYSDATE FROM DUAL;
END;
Run Code Online (Sandbox Code Playgroud)

首先,我不需要使用INTOOracle坚持让我这样做.是否还有其他方法使用游标(我在这里看到它/sf/answers/422097441/)?我认为它不应该是这样,它确实正常运行,就像在没有使用INTO或游标的MS SQL中一样.

Jon*_*n P 1

终于找到了我想要的输出的解决方案(根据您的回复):D

CREATE OR REPLACE 
PROCEDURE "TEST_PROCEDURE"
RET_DATE CHAR(10);
BEGIN
    SELECT TO_CHAR(SYSDATE, 'MM/DD/YYYY') INTO RET_DATE FROM DUAL;
    DBMS_OUTPUT.PUT_LINE(RET_DATE);
END;
Run Code Online (Sandbox Code Playgroud)

显示SYSDATE格式为 MM/DD/YYYY。尽管如此,还是感谢您的回复和想法(主要是@Jeffrey Kemp)。Oracle 只是延长了 MS SQL 通常可以在一行中执行的操作:D