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

(Resolvido) Deletando coluna em asp


rogerweplay

Pergunta

Pessoal peço a juda novamente, pois não estou conseguindo resolver, já procurei em varios foruns e mesmo assim continua dando erro..... alguém sabe deletar uma coluna atraves do id em ASP

meu codigo......

nome do arquivo: excluirAgenda.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="conexao.asp"-->
<%
dim id_agenda
id_agenda =request.QueryString("id_agenda")

 call conect
 con.execute ("delete from tbAgenda where id_agenda='"&id_agenda&"'")
 call desconect
%>
Dados apagados com sucesso!
erro....... tipo de error: Microsoft Jet DataBase Engine (0x80040E07) Tipo de dados incompativel na expressão de criterio. linha 8 : con.execute ("delete from tbAgenda where id_agenda='"&id_agenda&"'") já tentei de varias forma entre elas estão: con.execute ("delete from tbAgenda where id_agenda="&id_agenda con.execute ("delete from tbAgenda where id_agenda='"&id_agenda&"'") aqui esta a showAgenda2.asp
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
data_fone = request.form("data_fone")

DSNtemp="DRIVER={Microsoft Access Driver (*.mdb)}; "
DSNtemp=dsntemp & "DBQ=" & server.MapPath("BD/bdIntra.mdb")
sqlstmt = "SELECT * FROM tbAgenda WHERE data_fone like '%" & data_fone & "%'"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sqlstmt, DSNtemp, 3, 3
totalrecs = rs.recordcount

x = 0 
for x = 1 to totalrecs
if rs.eof then
exit for
else

id_agenda = rs("id_agenda")
nome = rs("nome")
data_fone = rs("data_fone")
obs = rs("obs")
assunto = rs("assunto")

%>
<table width="500px" border="2px" cellpadding="0" cellspacing="0" bordercolor="#000000">
<tr>
<td colspan="2"><br>
  <br>
  <br>
<p></td>
</tr>
<tr>
  <td width="105"><b>Id:</b></td>
  <td><%=id_agenda%></td>
</tr>
<tr>
  <td><b>nome:</b></td>
  <td><%=nome%></td>
</tr>
<tr>
  <td width="110" valign="top"><b>assunto:</b></td>
  <td><%=assunto%></td>
</tr>
<tr>
  <td><b>Data do Contato:</b></td>
  <td><%=data_fone%></td>
</tr>
<tr>
  <td><b>Observação:</b></td>
  <td><%=obs%></td>
</tr>
</table>
<a href="excluirAgenda.asp?id_agenda=<%=rs("id_agenda")%>">Excluir Registro</a>
<p>
<% rs.MoveNext %>
<% end if
next
%>

se alguém poder me ajudar serei grato

Roger Almeida

Link para o comentário
Compartilhar em outros sites

25 respostass a esta questão

Posts Recomendados

  • 0

Qual é o tipo do campo id_agenda?

já tentei de varias forma entre elas estão:

con.execute ("delete from tbAgenda where id_agenda="&id_agenda

con.execute ("delete from tbAgenda where id_agenda='"&id_agenda&"'")

Se o tipo for numérico, a primeira sintaxe (em negrito) é a correta, mas faltou um parêntesis no final da instrução. O correto seria:

con.execute ("delete from tbAgenda where id_agenda="&id_agenda)

Link para o comentário
Compartilhar em outros sites

  • 0

A variável id_agenda realmente existe e tem valor atribuído no ASP?

Provavelmente a variável não está definidada, o que resultaria em um código como esse:

delete from tbAgenda where id_agenda=

Se não conseguir resolver o problema poste o código completo da página de exclusão.

Link para o comentário
Compartilhar em outros sites

  • 0

ela existe

codigo de exclusão

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="conexao.asp"-->
<%
dim id_agenda
id_agenda =request.QueryString("id_agenda")

 call conect
 con.execute ("delete from tbAgenda where id_agenda='"&id_agenda&"'")
 call desconect
%>
Dados apagados com sucesso!
codigo de exibição da tabela
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
data_fone = request.form("data_fone")

DSNtemp="DRIVER={Microsoft Access Driver (*.mdb)}; "
DSNtemp=dsntemp & "DBQ=" & server.MapPath("BD/bdIntra.mdb")
sqlstmt = "SELECT * FROM tbAgenda WHERE data_fone like '%" & data_fone & "%'"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sqlstmt, DSNtemp, 3, 3
totalrecs = rs.recordcount

x = 0 
for x = 1 to totalrecs
if rs.eof then
exit for
else

id_agenda = rs("id_agenda")
nome = rs("nome")
data_fone = rs("data_fone")
obs = rs("obs")
assunto = rs("assunto")

%>
<table width="500px" border="2px" cellpadding="0" cellspacing="0" bordercolor="#000000">
<tr>
<td colspan="2"><br>
  <br>
  <br>
<p></td>
</tr>
<tr>
  <td width="105"><b>Id:</b></td>
  <td><%=id_agenda%></td>
</tr>
<tr>
  <td><b>nome:</b></td>
  <td><%=nome%></td>
</tr>
<tr>
  <td width="110" valign="top"><b>assunto:</b></td>
  <td><%=assunto%></td>
</tr>
<tr>
  <td><b>Data do Contato:</b></td>
  <td><%=data_fone%></td>
</tr>
<tr>
  <td><b>Observação:</b></td>
  <td><%=obs%></td>
</tr>
</table>
<a href="excluirAgenda.asp?id_agenda=<%=rs("id_agenda")%>">Excluir Registro</a>
<p>
<% rs.MoveNext %>
<% end if
next
%>

Link para o comentário
Compartilhar em outros sites

  • 0

Você esqueceu de remover o '' da query (as aspas simples não devem ser utilizadas para campos numéricos). Troque:

con.execute ("delete from tbAgenda where id_agenda='"&id_agenda&"'")
Por:
con.execute ("delete from tbAgenda where id_agenda="&id_agenda)
Se isso não resolver o problema, troque:
con.execute ("delete from tbAgenda where id_agenda="&id_agenda)
Por:
query="delete from tbAgenda where id_agenda="&id_agenda
response.Write("SQL: <br/><textarea style=""width:100%"">" & query & "</textarea>")
response.Flush()

E poste aqui o conteúdo do textarea.

Link para o comentário
Compartilhar em outros sites

  • 0
SQL:

delete from tbAgenda id_agenda=17

Você mudou algo no código? O correto seria ele mostrar delete from tbAgente where id_agente=17.

Obs.:

A segunda alteração no código foi apenas para testes (saber se a variável está chegando), você terá que desfazê-la para que o código funcione.

Link para o comentário
Compartilhar em outros sites

  • 0

na verdade eu não tinha mudado, eu so não percebi que tinha me dado o feedback do id_agenda,, so depois que eu fui responder,,, se ele me deu o mesmo id_agenda da onde eu cliquei, quer dizer que o id_agenda esta sendo indentificado, so não esta deletando a coluna

Link para o comentário
Compartilhar em outros sites

  • 0

eu tentei dessa outra forma tb:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file = "conexao.asp"-->
<%
dim id_agenda
id_agenda =request.QueryString("id_agenda")

dim shut
set shut = server.CreateObject("ADODB.connection")
    shut.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.MapPath("BD/bdIntra.mdb")
    
dim RS, SQL

Set RS = server.CreateObject("ADODB.Recordset")
SQL ="DELETE FROM tbAgenda WHERE id_agenda='"& id_agenda &"'"
Set RS = shut.execute(SQL)
%>

que tb deu erro de sintaxe(operador faltando) na expressão de consulta 'id_agenda='

na linha 15: Set RS = shut.execute(SQL)

Link para o comentário
Compartilhar em outros sites

  • 0

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="conexao.asp"-->
<%
dim id_agenda
id_agenda =request.QueryString("id_agenda")

 call conect
 query="delete from tbAgenda where id_agenda="&id_agenda
 response.Write("SQL: <br/><textarea style=""width:100%"">" & query & "</textarea>")
 response.Flush()
 call desconect

%>
Dados apagados com sucesso!

fiz do jeito que você me disse que era pra fazer,,,,, minha pagina principal continua como antes,,, tudo funciona no meu sistema, menos a exclusão....

corrigi os erros... mas continua não excluindo os dados... realmente não sei o que esta acontecendo

Link para o comentário
Compartilhar em outros sites

  • 0

Esse código é apenas para verificar se o id_agenda está chegando. Se sim (isto é, a query aparece completa ao invés de terminar no "=") deve desfazer a alteração, deixando o código assim:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file = "conexao.asp"-->
<%
dim id_agenda
id_agenda =request.QueryString("id_agenda")

dim shut
set shut = server.CreateObject("ADODB.connection")
    shut.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.MapPath("BD/bdIntra.mdb")
    
dim SQL

Set RS = server.CreateObject("ADODB.Recordset")
SQL ="DELETE FROM tbAgenda WHERE id_agenda="& id_agenda
Set RS = shut.execute(SQL)
%>

Link para o comentário
Compartilhar em outros sites

  • 0

testei aqui novamente, e deu certo, mas ao mesmo tempo não

utilizando a showAgenda2.asp, funciona perfeitamente

agora se eu vou pelo excluirAgenda da erro....

bom o que importa é que esta funcionando pelo pelo showAgenda2.asp

muito obrigado pela ajuda... valeu mesmo.....

Grato!!!

Roger Almeida

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

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