Shopping Hospedagem Fórum Contato
     
   O portal do desenvolvedor ASP Florianópolis-SC, Segunda-feira - 12 de Novembro de 2018  
Busca

Menu do site
Efetuar Login
Usuário:

Senha:

 Esqueceu a senha?
Login automático

 Cadastre-se
Excluindo vários registros de uma única vez
Avaliações: 69   -   Minha nota: Média Geral: 2  
Vamos aprender neste artigo a excluir vários registros de uma única vez.

Neste caso existe um fator de extrema importância a ser considerado. A tabela deverá conter um campo do tipo "auto-numérico" que irá identificar cada registro na hora da exclusão. No exemplo que iremos trabalhar, este campo será chamada de codigo_cliente.

Veja na figura abaixo a estrutura da tabela com o campo auto-numérico citado acima em destaque:




Desta forma, cada vez que adicionado um novo registro, um número diferente ao codigo_cliente será dado automaticamente.
Veja na figura abaixo os códigos dos clientes em destaque:




Sendo assim, quando um ou mais registros forem marcados para exclusão, seu código será enviado pelo formulário para que possamos excluí-los.



Vamos então ao código:
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<%
Dim objCon, strCon, strQ, objRS

strCon = "Data Source=C:\base_de_dados.mdb;Provider=Microsoft.Jet.OLEDB.4.0;"
Set objCon = Server.CreateObject("ADODB.Connection")
objCon.Open strCon

If Request.Form("codigo_cliente") <> "" Then
  strQ = Request.Form("codigo_cliente")
  strQ = Replace(strQ,","," OR codigo_cliente=")
  strQ = "DELETE * FROM clientes WHERE codigo_cliente=" & strQ
  Set objRS = objCon.Execute(strQ)
  Response.Write "<font color=red>*Os registros selecionados foram excluídos</font>"
End If

strQ = "SELECT * FROM clientes"
Set objRS = objCon.Execute(strQ)
If Not objRS.EOF Then
  Response.Write "<form method='post' action='" & Request.ServerVariables("SCRIPT_NAME") &"'>"
  Response.Write "<table border=1>"
  Response.Write "<tr>"
  Response.Write "<td bgcolor=gainsboro>Excluir</td>"
  Response.Write "<td bgcolor=gainsboro>Cliente</td>"
  Response.Write "<td bgcolor=gainsboro>Telefone</td>"
  Response.Write "</tr>"
  While Not objRS.EOF
    Response.Write "<tr>"
    Response.Write "<td align=center><input name='codigo_cliente' type='checkbox' value='" & objRS("codigo_cliente") & "'></td>"
    Response.Write "<td>" & objRS("nome_cliente") & "</td>"
    Response.Write "<td>" & objRS("telefone_cliente") & "</td>"
    Response.Write "</tr>"
    objRS.MoveNext
  Wend
  Response.Write "</table>"
  Response.Write "<input type='submit' value='Excluir'>"
  Response.Write "</form>"
Else
  Response.Write "<br>Nenhum cliente cadastrado"
End If
objCon.Close

Set objCon = Nothing
Set strCon = Nothing
Set strQ = Nothing
Set objRS = Nothing
%>


Na linha 28 informamos que o valor do campo codigo_cliente do formulário corresponde ao código do registro na tabela.

Na linha 9 capturamos o codigo_cliente dos registros quando um ou mais forem selecionados

Quando mais de um registro for selecionado, o valor de codigo_cliente virá com os códigos selecionados, separados por virgula.
Na linha 10 substituímos a virgula pela string usada na exclusão dos registros.



Veja na figura abaixo o resultado do exemplo:




Na figura abaixo, perceba que os registros acima selecionados foram excluídos, após clicado no botão Excluir.





Espero que este exemplo lhe seja útil.

 

Fabiano Dias
fabiano@superasp.com.br

www.superasp.com.br
O portal do desenvolvedor ASP




SuperASP do Brasil Ltda

03.066.522/0001-84
Av. Rio Branco 433 - Centro - Florianopolis - SC
Contato

© 2001/2008 - Superasp do Brasil Ltda. Todos os direitos reservados