Ir para conteúdo
Fórum Script Brasil
  • 0

Constraint Check que permite somente 2 campos iguais


EMSO.EXE

Pergunta

Pessoal, como adiciono uma Constraint Check que verifica se por exemplo o campo id_aluno está gravado mais de 2 vezes, ou seja, só permite 2 registros do aluno no banco, ele poderia fazer até 2 cursos

id_aluno id_curso

01 10

01 20

02 10

02 30

02 20 <---------- não pode permitir esse registro

Agradeço

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Se ele não for a chave primária da tabela, você pode colocar ele como UNIQUE:

alter table Cursando add constraint uniq_idAluno unique(id_aluno)
Qualquer coisa fala aí
Obrigado, mas preciso que permita 2 registros... mas já resolvi... segue:
create procedure stpAlunos_CursosIns @matricula int, @id_curso int as
declare @qtde int
set @qtde = (select count(matricula) as qtde from alunos_cursos where matricula=@matricula)
if @qtde < 2
 insert into alunos_cursos (matricula,id_curso) values (@matricula,@id_curso)
else
 print ' Existem 2 registros!'

Link para o comentário
Compartilhar em outros sites

  • 0

Bom dia Emso,

Uma procedure resolve, mas perde em performance. Quando a procedure é chamada, ela não é executada em paralelo. Isso significa q se vários usuários a chamarem ao mesmo tempo, o processamento será enfileirado.

Poderá fazer uma trigger para resolver este caso, ou uma função.

O mais interessante seria o tratamento desta situação no próprio fonte, fazendo uma pesquisa direta na base.

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...