EMSO.EXE Postado Dezembro 8, 2011 Denunciar Share Postado Dezembro 8, 2011 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 cursosid_aluno id_curso01 1001 2002 1002 3002 20 <---------- não pode permitir esse registroAgradeço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 isaikki Postado Dezembro 9, 2011 Denunciar Share Postado Dezembro 9, 2011 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í Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 EMSO.EXE Postado Dezembro 9, 2011 Autor Denunciar Share Postado Dezembro 9, 2011 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!' Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fulvio Postado Dezembro 12, 2011 Denunciar Share Postado Dezembro 12, 2011 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. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
EMSO.EXE
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
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.