Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Selt

Deletar resgitros em tabelas diferentes

Recommended Posts

Galera estou com um problema meio pentelho... não estou conseguindo procurar e deletar (se ele existirem) registros em multiplas tabelas...

 

o codigo que é esse:

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%><%Option ExplicitResponse.Expires=0Response.AddHeader "pragma","no-cache"Response.AddHeader "cache-control","private"Response.CacheControl = "no-cache"if len(session("logado"))=0 thenWith response.Write("<center>Você não está logado.<br>").Write("</center>")End WithResponse.Endend ifif session("tipo")<>"1" thenWith response.Write("<center>ESSA É UMA AREA RESTRITA AO ADMINISTRADO<br>").Write("VOCÊ NÃO TEM PERMISSÃO PARA ACESSA-LA<br>").Write("POR FAVOR, <a href='javascript:history.go(-1)'>RETORNE</a>").Write("</center>")End WithResponse.Endend ifcod=Cint(request.QueryString("codigo"))Dim conn,objrs,objstr,cod,OBJ2,OBJ3,OBJ4,RS2,RS3,RS4Set conn= Server.CreateObject("ADODB.Connection")conn.Open Application("Conn")obj2="SELECT * FROM contatoclass WHERE idanuncio="&codSET RS2=CONN.EXECUTE(OBJ2)if not rs2.EOF thenOBJ3="DELETE * FROM CONTATOCLASS WHERE IDPERGUNTA="&Cint(OBJ2("CODIGO"))SET RS3=CONN.EXECUTE(OBJ3)end ifOBJ4="DELETE * FROM CONTATOCLASS WHERE IDANUNCIO="&CODSET RS4=CONN.EXECUTE(OBJ4)objstr="DELETE * FROM classificado WHERE codigo="&codset objrs= conn.execute(objstr)%><html><head><title>Untitled Document</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css"><!--a:link {	font-family: Verdana, Arial, Helvetica, sans-serif;	font-size: 12px;	font-style: normal;	font-weight: bold;	color: #336666;	text-decoration: none;}a:visited {	font-family: Verdana, Arial, Helvetica, sans-serif;	font-size: 12px;	font-style: normal;	font-weight: bold;	color: #336666;	text-decoration: none;}a:hover {	font-family: Verdana, Arial, Helvetica, sans-serif;	font-size: 12px;	font-style: normal;	font-weight: bold;	color: #339999;	text-decoration: none;}a:active {	font-family: Verdana, Arial, Helvetica, sans-serif;	font-size: 12px;	font-style: normal;	font-weight: bold;	color: #336666;	text-decoration: none;}--></style></head><body><center>  <font color="#336600" size="2" face="Verdana, Arial, Helvetica, sans-serif"><br>  O anuncio foi excluido com sucesso <br>  </font> </center></body></html>

 

please help....

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não é esse o erro, mas você não precisa fazer duas requisições ao banco de dados. Um select para depois deletar. Se você executar o comando "delete" ele só deleta se houver registro com o código informado.

Pode fazer direto

OBJ3="DELETE * FROM CONTATOCLASS WHERE idanuncio="&cod

 

mas se você houver alguma regra de negócio que desconheço e você precisa mesmo fazer com o select antes, acerte o Cint(OBJ2("CODIGO") para

Cint(RS2("CODIGO")

Sérgio

Compartilhar este post


Link para o post
Compartilhar em outros sites

AAAAAAAAhhhhhhhhhhhhhh....agora o infeliz diz que deleto o registro mas naum deleto nadaa... :(/> (((Me diz tem algum erro de sintexa ou coisa parecida no DELETE???? cara usei o mesmo codigo em outra area do site... naum é parcido... é IGUAL (=), copy, a mesma coisa.... aaaahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhHELLLPPPPPPPPPPPPPPPP

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como o nosso amigo disse, não há necessidade de fazer um select, o comando DELETE so vai deletar se ouver registro na tabela, caso contrário ele não exibira nenhum erro.Agora, o caso do seu code apresentar que foi deletado mas nao foi, use esse comando (para depuraçao) logo abaixo da sua instrução SQL. E mostre o resultado:Response.Write OBJ3Response.End

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu a força galera... consegui resolver o plobrema... era uma variavel que não estava chegando...[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.