Jump to content
somebody

Criar uma regra de 'Delete'

Recommended Posts

somebody

Boa tarde, estou a desenvolver uma aplicação e preciso de uma ajudinha,

preciso de criar uma espécie de filtro em que não deixe o utilizador apagar um registo se houver registos associados.

Por exemplo, tenho uma tabela com defeitos de produto não posso apagar a ação relativa aquele defeito. dá pa entender?

Grata

Share this post


Link to post
Share on other sites
Retsu9

Boas,

Nunca usei ASP.net mas segundo percebi a tua questão trata-se apenas de consultar a base de dados.

Segundo percebi tu tens, imaginando, 2 tabelas : produtos, defeitos ;

na tabela de defeitos tens o produto em questão, e queres impossibilitar o utilizador de apagar um produto (na tabela de produtos) se esse produto possuir registos na tabela defeitos, certo?

Ora penso que a solução passará por quando o utilizador der ordem para apagar o produto, fazes um select à tabela defeitos com o id (ou o campo que tens definido para identificar o produto) e se essa consulta retornar algum resultado é porque esse produto existe na tabela defeitos, logo não podes apaga-lo, se não retornar qualquer resultado podes apaga-lo.

 

Share this post


Link to post
Share on other sites
somebody
7 minutos atrás, Retsu9 disse:

Boas,

Nunca usei ASP.net mas segundo percebi a tua questão trata-se apenas de consultar a base de dados.

Segundo percebi tu tens, imaginando, 2 tabelas : produtos, defeitos ;

na tabela de defeitos tens o produto em questão, e queres impossibilitar o utilizador de apagar um produto (na tabela de produtos) se esse produto possuir registos na tabela defeitos, certo?

Ora penso que a solução passará por quando o utilizador der ordem para apagar o produto, fazes um select à tabela defeitos com o id (ou o campo que tens definido para identificar o produto) e se essa consulta retornar algum resultado é porque esse produto existe na tabela defeitos, logo não podes apaga-lo, se não retornar qualquer resultado podes apaga-lo.

 

É exatamente isso. O problema é que ainda tou muito verde na programação e tou um bocado perdida..

Ainda para mais a primeira fase da app foi feita por outro estagiário e perco-me com muita facilidade. Nem sei muito bem em que parte do codigo deva pegar

 

Share this post


Link to post
Share on other sites
Retsu9

Mostra a estrutura das tabelas em questão e o código que tens para Ler e eliminar os registos para ver se consigo ajudar.

no entanto o que tens que fazer é muito simples, no teu método de eliminar o produto, já tens que ter acesso ao ID do mesmo, logo fazes uma pesquisa na tabela defeitos:

Select * From TABELA_DEFEITOS Where ID_Produto=VARIAVÉL_ID_PRODUTO

depois:

IF tuaVariavélParaLerDados.Hasrows Then
  
  Produto existe na tabela defeitos
  
  Else
  
  	Produto não existe na tabela defeitos.
  
  End IF

 

Share this post


Link to post
Share on other sites
somebody
19 horas atrás, Retsu9 disse:

Mostra a estrutura das tabelas em questão e o código que tens para Ler e eliminar os registos para ver se consigo ajudar.

no entanto o que tens que fazer é muito simples, no teu método de eliminar o produto, já tens que ter acesso ao ID do mesmo, logo fazes uma pesquisa na tabela defeitos:


Select * From TABELA_DEFEITOS Where ID_Produto=VARIAVÉL_ID_PRODUTO

depois:


IF tuaVariavélParaLerDados.Hasrows Then
  
  Produto existe na tabela defeitos
  
  Else
  
  	Produto não existe na tabela defeitos.
  
  End IF

 

Estive a falar com a tutora e ela n quer triggers, quer que faça isso mas em codigo no mvc...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.