试图创建Postgres功能

时间:2018-03-07 20:48:36

标签: postgresql

在Postgress GUI的创建屏幕中,我在while语句中遇到语法错误。语言是plpgsql,返回类型是void。 TIA

在这里输入代码

begin  
declare counter integer := 1;  
declare CurrentDate Date := '1/1/2018';  
    while CurrentDate < '1/1/2019'  
    loop  
        insert into dimCalendar select CurrentDate, EXTRACT(DOW FROM  
current_date), EXTRACT(DOY FROM  current_date);  
        CurrentDate := CurrentDate + 1;  
    end loop  
end

1 个答案:

答案 0 :(得分:2)

下次,请尝试包含所有代码

除非您有理由不

,否则请始终使用ISO日期格式

declarebegin

之前

在&#34; end loop&#34;

之后你错过了一个分号

请在PostgreSQL中使用camel_case

create or replace function foo() returns void as $$
declare
    counter integer := 1;
    curr_date date := '2018-01-01';
begin

    while curr_date < '2019-01-01' loop

        raise notice 'curr_date: %', curr_date;

        curr_date := curr_date + 1;

    end loop;

end
$$ language plpgsql;