使用sysdate

时间:2016-03-03 19:23:59

标签: oracle plsql

我真的很感谢som帮助创建一个oracle sql的函数!该函数应该以'YYYY-MM-DD:HH24:MI'的形式返回sysdate! 这是我提出的,但不会起作用

    Create function get_återdatum return number as
    NU varchar2(20)NOT NULL;
    Begin
    SELECT to_char(sysdate,'YYYY-MM-DD:HH24:MI') into NU from DUAL;
    Return(NU);
    End;
    /

1 个答案:

答案 0 :(得分:0)

正确的语法是

CREATE FUNCTION get_återdatum RETURN VARCHAR2 IS
  NU varchar2(20);
BEGIN
  SELECT to_char(sysdate, 'YYYY-MM-DD:HH24:MI') INTO NU FROM DUAL;
  RETURN NU;
END;
/

IS而不是ASNOT NULL是不必要的(实际上要求你初始化变量),返回语句中的()是不必要的,而且你想要返回VARCHAR2代替number,最后 - 您可能需要考虑CREATE OR REPLACE而不是CREATE

编辑:正如@ n​​op77svk指出的那样,你可以完全省略选择并简单地做

CREATE OR REPLACE FUNCTION get_återdatum RETURN VARCHAR2 IS
BEGIN
  RETURN to_char(sysdate, 'YYYY-MM-DD:HH24:MI');
END;
/