我的表名是ARBITER,其中一列是CREATE_DATE。我想删除超过4个月的数据。
如何正确重写程序?所以我写了这个:
procedure RemoveOldData(CREATE_DATE) as
BEGIN
delete from ARBITER
where trunc(sysdate) < add_months(trunc(sysdate),-4);
END;
但是我收到了这个错误
错误(91):PLS-00103:遇到符号&#34;文件结束&#34;期待以下之一时:开始结束函数编译指示程序
答案 0 :(得分:2)
此程序将产生您需要的具体结果:
create or replace PROCEDURE RemoveOldData IS
BEGIN
delete from ARBITER
where create_date < add_months(trunc(sysdate),-4);
END;
/
这是a LiveSQL demo (OTN account required)。
问题是您打算使用此参数
PROCEDURE RemoveOldData (ARBITER in varchar2)
这应该是截止日期吗?表名?
答案 1 :(得分:0)
或者,您可以使用class ViewCreate(CreateView):
model = view_C
author_name = self.request.user.username #this is the error
author = get_user_model().objects.get(username=author_name).pk
publish_date = datetime.date.today()
initial={
'author':author,
'publish_date':publish_date,
}
函数(如果恰好包含四个月的时间,请在4之前添加一个等号):
months_between
答案 2 :(得分:-1)
create or replace procedure RemoveOldData(CREATE_DATE in varchar2)
as
begin
delete from CREATE_DATE
where trunc(sysdate) < add_months(trunc(sysdate),-4);
exception
WHEN OTHERS THEN
raise_application_error(-20001,'An error was encountered - '||SQLCODE||' -ERROR- '||SQLERRM);
end;
/