Fabio C Silva Postado Outubro 7, 2011 Denunciar Share Postado Outubro 7, 2011 Bom dia,Gostaria de criar uma tabela no Oracle com um nome + a data (YYYYMM) corrente.Ex: TABELA_TESTE_201110Poderia criar na mão, todo mês mas gostaria que esse processo fosse automático.Tentei de várias formas, mas não obtive sucesso.CREATE TABLE TABELA_TESTE_ || SELECT TO_CHAR(SYSDATE, 'YYYYMM') FROM DUALASSELECT * FROM TABELA_MODELOWHERE 1=2;Nem sei se isso é possível, mas se alguém puder ajudar eu agradeço. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Fabio C Silva Postado Outubro 11, 2011 Autor Denunciar Share Postado Outubro 11, 2011 Bom, pessoal...Consegui.Criei uma procedure para tratar os dados em variáveis.Não sei se dei muita volta para chegar no resultado, mas segue abaixo caso alguém precise.CREATE OR REPLACE PROCEDURE CRIAR_TABELA ISDT_ANO VARCHAR2(15);DT_MES VARCHAR2(15);DT_ANO_MES VARCHAR2(15);VAR_MES VARCHAR2(15);BEGIN SELECT TO_CHAR(SYSDATE, 'YYYY') INTO DT_ANO FROM DUAL; SELECT TO_CHAR(SYSDATE, 'MM') -1 INTO VAR_MES FROM DUAL; CASE VAR_MES WHEN 1 THEN DT_MES := '01'; WHEN 2 THEN DT_MES := '02'; WHEN 3 THEN DT_MES := '03'; WHEN 4 THEN DT_MES := '04'; WHEN 5 THEN DT_MES := '05'; WHEN 6 THEN DT_MES := '06'; WHEN 7 THEN DT_MES := '07'; WHEN 8 THEN DT_MES := '08'; WHEN 9 THEN DT_MES := '09'; ELSE DT_MES := VAR_MES; END CASE; DT_ANO_MES := DT_ANO || DT_MES; EXECUTE IMMEDIATE 'CREATE TABLE TABELA_TESTE_A_' || DT_ANO_MES || ' AS SELECT * FROM TABELA_MODELO WHERE 1=2'; END CRIAR_TABELA; Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Fabio C Silva
Bom dia,
Gostaria de criar uma tabela no Oracle com um nome + a data (YYYYMM) corrente.
Ex: TABELA_TESTE_201110
Poderia criar na mão, todo mês mas gostaria que esse processo fosse automático.
Tentei de várias formas, mas não obtive sucesso.
CREATE TABLE TABELA_TESTE_ || SELECT TO_CHAR(SYSDATE, 'YYYYMM') FROM DUAL
AS
SELECT * FROM TABELA_MODELO
WHERE 1=2;
Nem sei se isso é possível, mas se alguém puder ajudar eu agradeço.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.