X-MAN Postado Julho 18, 2006 Denunciar Share Postado Julho 18, 2006 Ola, tenho este codigo para randonizar dados na base de dados, funciona perfeitamente so que as vezes da este eroo:Tipo de erro:ADODB.Field (0x80020009)BOF ou EOF é verdadeiro ou o registo actual foi eliminado; a operação pedida necessita de um registo actual./inbrasil/randomize2.aspComo resolvo isso?A seguir, o codigo randomize2.asp:Set Conn = Server.CreateObject("AdoDb.Connection") Conn.provider="Microsoft.Jet.OLEDB.4.0" Conn.connectionstring=Server.Mappath("bd_inbrasil.mdb") Conn.open %> <% Set RS = Server.CreateObject("adodb.recordset") SQL = "select * from tb_estados" RS.Open SQL,Conn,3,3 %> <% Randomize RandomNumber = Int(Rnd *RS.Recordcount) + 1 RS.move RandomNumber response.write(RS("estado")) %>Tenho apenas 6 registros na base de dados!Agradecia a ajuda! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 X-MAN Postado Julho 18, 2006 Autor Denunciar Share Postado Julho 18, 2006 Eu sei que se eu usar um select de todos os registros do BD e depois usar GetRows pra recupar, não dá este erro.Numero de registrosvalor = rs.GetRows()depois pego o maior indice dessa matriz...maior = UBound(valor)Mas como vou usar estes dados depois no randomize para não dar o erro??Agradecia a ajuda! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 marcos_804 Postado Julho 18, 2006 Denunciar Share Postado Julho 18, 2006 Faz assim óAbra a conexão Depois crie uma matriz para armazenar dados dentro de cada elemento dim Legal(10000) rs.Open "Select...", conexao, 3, 3 for [color=#000099][b]x[/b][/color] = 1 to rs.Recordcount if rs.EOF then exit for Legal([color=#000099][b]x[/b][/color]) = rs("[color=#003300][b]IndiceDaTabela[/b][/color]") rs.MoveNext Next 'Agora você cria o randomize para poder chamar um elemento que venha da matriz com um elemento de [color=#000099][b]x[/b][/color] Randomize [color=#996633][b]RandomNumber[/b][/color] = Legal(Int(Rnd *RS.Recordcount) + 1) rs.Close Então voce pega o resultado do randomize e abre a conexao com apenas aquele registro que estava cadstrado. rs.Open "SELECT... WHERE indice="& [color=#996633][b]RandomNumber[/b][/color], conexao, 3, 3 ... Espero ter ajudado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 X-MAN Postado Julho 18, 2006 Autor Denunciar Share Postado Julho 18, 2006 Opa, primeiramente, obrigado pela ajuda, segundo, não entendi direito, ainda sou iniciante, pra que o "color"??? Tipo, como ficaria este codigo se fosse para randonizar dados na tabela "estados"??Agradecia a ajuda e a paciência, rsrs!!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
X-MAN
Ola, tenho este codigo para randonizar dados na base de dados, funciona perfeitamente so que as vezes da este eroo:
Tipo de erro:
ADODB.Field (0x80020009)
BOF ou EOF é verdadeiro ou o registo actual foi eliminado; a operação pedida necessita de um registo actual.
/inbrasil/randomize2.asp
Como resolvo isso?
A seguir, o codigo randomize2.asp:
Tenho apenas 6 registros na base de dados!
Agradecia a ajuda!
Link para o comentário
Compartilhar em outros sites
3 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.