- Este tópico contém 1 resposta, 1 voz e foi atualizado pela última vez 8 anos, 8 meses atrás por Thiago Vilhena.
-
AutorPosts
-
10 de março de 2016 às 12:02 am #108062Thiago VilhenaParticipante
Pessoal, Boa Tarde
Estou tentando fazer uma procedure pra realizar o add partition mas estou com o erro ORA-14048: uma operação de manutenção da partição não pode ser combinada com outras operações
toda vez que debugo, poderiam me ajudar, segue o códigoCREATE OR REPLACE PROCEDURE LF.XXXX is
vano1 varchar2(4) := to_char(trunc(sysdate, 'year'), 'YYYY');
vmes1 varchar2(2) := to_char(trunc(sysdate, 'month'), 'MM');
vano2 varchar2(4);
vmes2 varchar2(10);
v_dt_inicial varchar2(10) := to_char(trunc(sysdate, 'month'), 'DD') || '/' ||
to_char(sysdate, 'MM/YYYY');
v_dt_final varchar2(10) := to_char(trunc(sysdate, 'month'), 'DD') || '/' ||
to_char(sysdate, 'MM/YYYY');
vNome_particao varchar2(7);
vNome_particao_1 varchar2(7);
vscript varchar2(2000);
vAudit varchar2(255);
v_cursor integer;begin
v_cursor := dbms_sql.open_cursor;
-- v_dt_inicial := to_char(add_months(sysdate, -1), 'dd/mm/yyyy');
-- v_dt_final := to_char(add_months(sysdate, 0), 'dd/mm/yyyy');
v_dt_inicial := '01/02/2016';
v_dt_final := '29/02/2016';
-- v_dt_final := to_char(add_months(v_dt_inicial, +1), 'dd/mm/yyyy');vmes1 := substr(v_dt_inicial, 4, 2);
vano1 := substr(v_dt_inicial, 7, 4);
vmes2 := substr(v_dt_final, 4, 2);
vano2 := substr(v_dt_final, 7, 4);
vNome_particao := vano1 || '_' || vmes1;
vNome_particao_1 := vano2 || '-' || vmes2;
vAudit := 'TB_SAS_AUDIT_' || vNome_particao;begin
vscript := 'ALTER TABLE TB_SAS_AUDITORIA_T ADD PARTITION ' || vAudit ||
' VALUES LESS THAN(TO_DATE(''';
vscript := vscript || vNome_particao_1 || '-01 00:00:00''';
vscript := vscript || ',' || '''SYYYY-MM-DD HH24:MI:SS''';
vscript := vscript || ',' || '''NLS_CALENDAR=GREGORIAN''';
vscript := vscript ||
')) TABLESPACE TS_LMS_DATA_128M PCTFREE 10 PCTUSED 0 INITRANS 1 MAXTRANS 255 STORAGE (FREELISTS 15 FREELIST GROUPS 1) LOGGING )';--EXECUTE IMMEDIATE vscript;
dbms_sql.parse(v_cursor, vscript, dbms_sql.native);
dbms_output.put_line(vscript);
end;
end XXXX;
/Attachments:11 de março de 2016 às 8:43 pm #108067Thiago VilhenaParticipanteAcertei, Coloquei um EXECUTE IMMEDIATE ‘ALTER SESSION SET NLS_DATE_FORMAT = ”DD/MM/YYYY” ‘;
e na variavel vscript no final tirei o ) depois do logging ai parou com o erro
-
AutorPosts
- Você deve fazer login para responder a este tópico.