mkboy Postado Março 4, 2004 Denunciar Share Postado Março 4, 2004 Quero contar o total de registros encontrados no banco.To fazendo assim:<%dim objRSdim objRS2dim totalregistrosdim strrs%> <% Set objRS2 = Server.CreateObject("ADODB.Recordset")strrs = "SELECT COUNT(*) AS Total from bo"objRS2.CursorLocation = 3 objRS2.open strRS, conn, 0, 1 totalregistros = objRS(0) if totalregistros = 0 then response.write "Nenhum registro"else%>E no HTML ponho isso:<%Response.Write totalregistros end if%>E ta apresentando este erro:Tipo de erro:Erro de tempo de execução do Microsoft VBScript (0x800A000D)Tipos incompatíveis: '[string: "nometeste"]'/pescaki/v2/boletim/processa_01.asp, line 62A linha 62 é essa: totalregistros = objRS(0) E esse nome teste do erro é o nome que ta gravado no banco!!!Ué! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Março 4, 2004 Denunciar Share Postado Março 4, 2004 Bom dia..quando eu quero contar os registros, eu faço assim:Conecta ao banco:url_conexao = Server.MapPath("banco.mdb") set conexao = Server.CreateObject("ADODB.Connection") conexao.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&url_conexao montamos o sql: sql = "select * from tabela" set rs = conexao.execute(sql) fazemos um loop contando os registros: i = 0 do while not rs.eof i = i+1 rs.movenext loopassim a variavel i vai conter o numero de registros.Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ursolouco Postado Março 4, 2004 Denunciar Share Postado Março 4, 2004 totalregistros = objRS(0) if totalregistros = 0 then response.write "Nenhum registro"elseBrother!!Se você precisa verificar uma variavel(tipo texto) se esta vazia, experimente da seguinte forma:<% If TotalRegistros = "" Or TotalRegistro = EMPTY Then Response.Write ("Nenhum Registro") Else 'Prossiga na rotina End if %>Abraços!!![urso] Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Decio Postado Março 4, 2004 Denunciar Share Postado Março 4, 2004 Tenta fazer desta forma:Set objRS2 = Server.CreateObject("ADODB.Recordset")strrs = "SELECT * from bo"objRS2.CursorType = 3 objRS2.open strRS, conn, 3, 3totalregistros = objRS2.recordcount Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 mkboy Postado Março 5, 2004 Autor Denunciar Share Postado Março 5, 2004 Eu coloquei no meu codigo o sistema para contar, mas eu abri outra conexao, sera que pode fazer isso!!!Agora ele ta escrevendo na tela a quantidade total de registros que tem no banco de dados, agora eu queria colocar neste código para ele mostrar somente quantos registros foram localizados pela busca.O count da em vermelho:<link rel=stylesheet type="text/css" href="folha.css"><%dim objRSdim objRS2dim totalregistrosdim strrscor_titulo = "#cccccc"query = Request.querystring("query")query = Replace(query,"'","''")If query = "" thenresponse.redirect "busca.asp"End ifSet conn = Server.CreateObject ("ADODB.Connection")strconn = "Driver={Microsoft Access Driver (*.mdb)};DBQ="& Server.MapPath("fish.mdb")conn.open strconnSet objRS = Server.CreateObject("ADODB.Recordset")strrs = "Select * from bo where nome like'%" & query & "%' order by email"objRS.open strrs, connIf objRS.EOF Thenresponse.write "<center>"response.write "<table border=0 width="&"90%"&" cellspacing="&"0"&" cellpaging="&"0"&">"response.write "<tr><td><font class="&"padrão"&">Resultado da pesquisa:</font></td></tr>"response.write "</table>"response.write "<br>"response.write "<table bgcolor="&"#000033"&" border=0 width="&"90%"&" cellspacing="&"0"&" cellpaging="&"0"&">"response.write "<tr><td>"response.write "<table bgcolor="&"#ffffff"&" border=0 width="&"100%"&" cellspacing="&"0"&" cellpaging="&"0"&">"response.write "<tr><td bgcolor="&"#efefef"&"><font class="&"padrão"&">Nenhum registro encontrado.</font></td></tr>"response.write "<tr><td><font class="&"padrão"&">Redefina sua busca.</font></a></td></tr>"response.write "</table>"response.write "</td></tr>"response.write "</table>"response.write "</center>"End if If erro <> "" ThenResponse.Write mensagemEnd ifDo While not objRS.Eof%> <HTML><head><title>Resultado da pesquisa</title></head><body><center> <table border="0" width="90%" cellspacing="0" cellpaging="0"> <tr> <td><font class="padrão"> <% Set Conexao = CreateObject("ADODB.CONNECTION")Constr ="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("fish.mdb")Conexao.Open Constr%><%Set rs = Conexao.Execute("SELECT COUNT(*) AS total FROM bo")Response.Write "Total de Registros: "& rs("total")rs.CloseSet rs = NothingConexao.Close %> </font> </td> </tr> <tr> <td> </td> </tr> </table><br><table bgcolor="#000033" border="0" width="90%" cellspacing="0" cellpaging="0"><tr><td><table bgcolor="#ffffff" border="0" width="100%" cellspacing="0" cellpaging="0"><tr><td><!--Faz um loop no banco e imprime os resultados--><%If objRS.BOF or objRS.EOF Then response.write "Nenhum registro localizado."Else cor="ffffff" response.write "<table border=0 cellpaging="&"0"&" cellspaging="&"0"&" width="&"100%"&">" response.write "<tr bgcolor="&cor_titulo&"><td><font class="&"padrão"&"><b>Nome:</b></font></td><td><font class="&"padrão"&"><b>E-mail:</b></font></td><td><font class="&"padrão"&"><b>Data:</b></font></td><td><font class="&"padrão"&"><b>Hora:</b></font></td><td><font class="&"padrão"&"><b>IP:</b></font></td><td><font class="&"padrão"&"><b>Editar:</b></font></td><td><font class="&"padrão"&"><b>Deletar:</b></font></td></tr>" Do While Not objRS.EOF if cor="ffffff" then cor="efefef"else cor="ffffff" end if response.write "<tr bgcolor="&cor&"><td><font class=""padrão"">"&objRS("nome")&"</font></td><td><a href=""mailto:" & objRs("email") & """>"& objRs("email") &"</a></td><td><font class=""padrão"">"&objRS("data")&"</font></td><td><font class=""padrão"">"&objRS("hora")&"</font></td><td><font class=""padrão"">"&objRS("ip")&"</font></td><td><a href='alterar.asp?id="&objRs("id")&"'>Editar</a></td><td><a href='deleta.asp?id="&objRs("id")&"'>Excluir</a></td></tr>" objRS.MoveNext Loop response.write "</table>"End If%> <!--Fim do loop--> <%loopobjRS.closeconn.close%></td></tr></table></td></tr></table> <p><font size="1" face="Verdana, Arial, Helvetica, sans-serif"><a href="JavaScript:voltar();" onMouseOver="window.status='Página Anterior '; return true" onMouseOut="window.status=''; return true"> <script language="JavaScript"><!--function voltar(){ if (history.length > 0){window.history.back();}}//--></script> Voltar</a></font> </p></center></body></html> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 mkboy Postado Março 5, 2004 Autor Denunciar Share Postado Março 5, 2004 O codigo acima ta respondendo certo na tela, agora gostaria de apresentar a quantidade de registros achados na busca. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 [ GuTo ] Postado Março 5, 2004 Denunciar Share Postado Março 5, 2004 Dim SuaConexao, SuaSQL, SeuRecordSet SuaConexao = Server.CreateObject("ADODB.Connection") SuaSQL = "SELECT COUNT(*) AS total FROM SuaTabela" SET SeuRecodSet = SuaConexao.Execute(SuaSQL) Response.Write SeuRecordSet("total") 'voilá Set SeuRecodSet = Nothing Set SuaConexao = Nothing ...OU... Dim SuaConexao, SuaSQL, SeuRecordSet SuaConexao = Server.CreateObject("ADODB.Connection") SuaSql = "SELECT * FROM SuaTabela" SeuRecodSet.Open SuaSQL,SuaConexao,3,3 Response.Write SeuRecordSet.RecordCount Set SeuRecodSet = Nothing Set SuaConexao = NothingDúvida minha:Não sei, mas em qualquer código, será que precisaria limpar a variável SuaSQL (No caso, se a string SQL for dada apartir de uma variável, como no exemplo anterior (SuaSQL)) ?E outra coisa... Devemos limpar TODAS as variáveis sempre?Ou só essas de RecordSet e Conexao?Eu pelo menos só estou limpando estas sempre. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ursolouco Postado Março 5, 2004 Denunciar Share Postado Março 5, 2004 Devemos limpar TODAS as variáveis sempre?Ou só essas de RecordSet e Conexao?Brother!!Sei lá cara, eu particularmente, sempre limpo o RecordSet e Conexão, pois vão vir novos dados na proxima manipulação, já as outras variaveis, como vou usa-las ou manipula-las.. não vejo necessidade.Abraços!![urso] Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Tork Postado Março 5, 2004 Denunciar Share Postado Março 5, 2004 esse esquema que vc (guto) falou de limpar é set conexao = nothing? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 [ GuTo ] Postado Março 6, 2004 Denunciar Share Postado Março 6, 2004 esse esquema que vc (guto) falou de limpar é set conexao = nothing? Yeah! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Marcelo Canevello Ferreira Postado Março 6, 2004 Denunciar Share Postado Março 6, 2004 quando você dá um Set RecordsetQualquer = Nothing você está destruindo o objeto recordset e liberando memória... ok Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
mkboy
Quero contar o total de registros encontrados no banco.
To fazendo assim:
E no HTML ponho isso:
E ta apresentando este erro:
A linha 62 é essa:
E esse nome teste do erro é o nome que ta gravado no banco!!!
Ué!
Link para o comentário
Compartilhar em outros sites
10 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.