Pular para o conteúdo
  • Este tópico contém 4 respostas, 2 vozes e foi atualizado pela última vez 18 anos, 8 meses atrás por Marcio68Almeida.
Visualizando 5 posts - 1 até 5 (de 5 do total)
  • Autor
    Posts
  • #79990
    ferro
    Participante

      Oi,

      Tenho em meu projeto uma tabela com 3 informações:
      id – integer (incrementado automaticamente)
      ano – integer (ano atual da inserção do registro)
      xml – dados em estrutura xml (informações do documento)

      A chave primária desta tabela será composta, uma combinação entre id e ano.

      Foi criada uma sequence para incrementar o id automaticamente.

      Na aplicação, a busca será pelo id e ano juntos, de forma que o “número” do documento seja visualizado assim: 2007-228822 (ano-id).

      Porém, minha dúvida é:
      como criar um JOB que, a cada virada de ano (01/01/xx à 00:00:00) reinicialize a sequência.

      Agradeço antecipadamente
      Ferro.

      #79991
      ferro
      Participante

        [quote=”ferro”:1gwlh057]Oi,

        Tenho em meu projeto uma tabela com 3 informações:
        id – integer (incrementado automaticamente)
        ano – integer (ano atual da inserção do registro)
        xml – dados em estrutura xml (informações do documento)

        A chave primária desta tabela será composta, uma combinação entre id e ano.

        Foi criada uma sequence para incrementar o id automaticamente.

        Na aplicação, a busca será pelo id e ano juntos, de forma que o “número” do documento seja visualizado assim: 2007-228822 (ano-id).

        Porém, minha dúvida é:
        como criar um JOB que, a cada virada de ano (01/01/xx à 00:00:00) reinicialize a sequência.

        Agradeço antecipadamente
        Ferro.[/quote]

        #79995
        Marcio68Almeida
        Participante

          Para reiniciar a sequence, só removendo e recriando…
          Isso não é algo costumeiro pois o id costuma ser a PK da tabela…

          #80033
          ferro
          Participante

            Certo..
            Então há como eu (antes de inserir um registro) verificar qual foi o ultimo id (campo inteiro, sem sequência), incrementar e esse id?

            #80040
            Marcio68Almeida
            Participante

              Insert into tabela
              Values
              (select MAX (id) + 1 From tabela, ano, xml)

              Isto deve funcionar… não testei…

            Visualizando 5 posts - 1 até 5 (de 5 do total)
            • Você deve fazer login para responder a este tópico.