none
Criar procedure para gerar números sequenciais não repetidos RRS feed

  • Pergunta

  • Boas.

    Tenho um form em vb.net que é uma tela de abertura de atendimentos de um sistema de Help Desk, e no numero de atendimento pretendo que, ao digitar "0" e pressionar a tecla "Enter" que o SQL (DB onde roda meu sistema) crie um numero sequencial e não repetido. Exemplo: " ultimo atendimento foi o nº 10, logo o próximo a ser gerado será o numero 11".

    Pesquisei e vi que uma Procedure no SQL seria a forma mais indicada e rápida, pois no VB bastaria colocar o evento de pressionar a tecla "Enter" para executar tal procedure e retornar o valor.

    Minha dúvida está em como criar essa procedure? Como ela deveria ser?

    Nota: Em tenho uma tabela "Atendimentos" em que tem a coluna "ID_Atendinentos" como Unique e PK. que é onde ficam armazenados todos os dados de atendimentos gerados.

    Alguém pode ajudar?

    sexta-feira, 15 de dezembro de 2017 10:51

Respostas

  • Companheiro porque você não usa esse id ai na tabela como Identity?
    • Marcado como Resposta NelsonZyon sexta-feira, 15 de dezembro de 2017 13:26
    sexta-feira, 15 de dezembro de 2017 12:04
  • Exatamente!

    __________________________________________________________________________________________________________ Atenciosamente, Mike Rodrigues De Lima.

    • Marcado como Resposta NelsonZyon sexta-feira, 15 de dezembro de 2017 13:26
    sexta-feira, 15 de dezembro de 2017 12:30
  • Exatamente , mas estuda o uso do Sequence , ele é mais amigável , 

    Wesley Neves - Brasilia-DF     

    https://wesleyneves.wordpress.com/

    SELECT Tab.[that's me:]

    FROM

    (

        VALUES

            ('Wesley Neves'),

            ('Analista.NET'),

            ('Pós Graduando em Banco de Dados com ênfase em BI'),

            ('MTA -SQL Server'),

            ('MTA -Web Developed')

    ) AS Tab ("that's me:");


    "Se a resposta for útil ou ajudar ,não esqueça de marcar"





    Wesley Neves

    • Marcado como Resposta NelsonZyon sexta-feira, 15 de dezembro de 2017 13:28
    sexta-feira, 15 de dezembro de 2017 13:00

Todas as Respostas

  • Companheiro porque você não usa esse id ai na tabela como Identity?
    • Marcado como Resposta NelsonZyon sexta-feira, 15 de dezembro de 2017 13:26
    sexta-feira, 15 de dezembro de 2017 12:04
  • entendi...então se eu colocar a ID_Atendimentos como Identity, quando eu for inserir um novo registro ele já gera um numero sequencial de forma automática?

    sexta-feira, 15 de dezembro de 2017 12:10
  • Exatamente!

    __________________________________________________________________________________________________________ Atenciosamente, Mike Rodrigues De Lima.

    • Marcado como Resposta NelsonZyon sexta-feira, 15 de dezembro de 2017 13:26
    sexta-feira, 15 de dezembro de 2017 12:30
  • Exatamente , mas estuda o uso do Sequence , ele é mais amigável , 

    Wesley Neves - Brasilia-DF     

    https://wesleyneves.wordpress.com/

    SELECT Tab.[that's me:]

    FROM

    (

        VALUES

            ('Wesley Neves'),

            ('Analista.NET'),

            ('Pós Graduando em Banco de Dados com ênfase em BI'),

            ('MTA -SQL Server'),

            ('MTA -Web Developed')

    ) AS Tab ("that's me:");


    "Se a resposta for útil ou ajudar ,não esqueça de marcar"





    Wesley Neves

    • Marcado como Resposta NelsonZyon sexta-feira, 15 de dezembro de 2017 13:28
    sexta-feira, 15 de dezembro de 2017 13:00
  • Deleted
    sábado, 16 de dezembro de 2017 10:28
  • E qual seria sua sugestão José Diz?
    segunda-feira, 18 de dezembro de 2017 10:04
  • O que você precisa é um trigger no banco que dispare sempre que um atendimento for inicializado. Você pode usar uma tabela auxiliar para gravrar esse número associado ao usuário (atendente). Daí para frente você tem o número do atendimento e quem o fez para se divertir um pouco blz.
    quinta-feira, 21 de dezembro de 2017 15:30