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

Exibir Os 05 Primeiros Registro Do Bd


--_Michel_--

Pergunta

Tenho um Banco de dados com 02 coluna uma chamada ID e a outra chamada Links... Tenho umaa administração onde posso incluir, alterar, excluir e consultar os dados cadastrados pelo ID.

A minha dúvida é na página principal onde tenho um espaço para visualização apenas dos 05 primeiros registro do Banco e um link para listar todos...

Gostaria de saber como faço para exibir somente os 05 primeiros registro de um Banco de dados.

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

você tem noção de como faz pra mostrar todos os registros, em um loop?

se tiver.. fica facil.. basta fazer a condição de parada do loop quando chegar até 5..

Link para o comentário
Compartilhar em outros sites

  • 0

Olha desse jeito:

RecSet.Open "Select link from tabela order by id DESC", conn

dim link(5)

z=1
while not RecSet.EOF
link(z) =RecSet("link")
id(z) = RecSet("id")
z=z+1
RecSet.MoveNext
wend
RecSet.Close%>

response.write link(1)&"<br>"
response.write link(2)&"<br>"
response.write link(3)&"<br>"
response.write link(4)&"<br>"
response.write link(5)&"<br>"

Qualquer coisa, posta ai!!!

[]'s

Victor

Link para o comentário
Compartilhar em outros sites

  • 0

Ae galera, valeu pela ajuda... Dark0 não tenho nenhuma noção de como exibir todos os registros em um loop, se puder posta aí como eu faço isso que pode servir para mim tb...

Vou testar os exemplos acima postados, mas creio que o do victor pode servir pois tenho que exibir somentes os 05 primeiros registro que estão gravados no banco de dados...

Valeu galera... Vou testa-lo e depois eu posto aqui se deu certo, mas qualquer novidade ou outra forma de realizar este procedimento postem ai.

Link para o comentário
Compartilhar em outros sites

  • 0
você não pode simplesmente usar um select top?

"select top 5 from tabela order by id desc"

pega 5 registros de acordo com o id do maior para o menor....

Aff cara, todo mundo sabe que isso não funciona né dry.gifdry.gifdry.gif Se você fizer funcionar isso te dou 50 reais, não tem como, só com for, ou loop mesmo

Link para o comentário
Compartilhar em outros sites

  • 0
você não pode simplesmente usar um select top?

"select top 5 from tabela order by id desc"

pega 5 registros de acordo com o id do maior para o menor....

Aff cara, todo mundo sabe que isso não funciona né dry.gifdry.gifdry.gif Se você fizer funcionar isso te dou 50 reais, não tem como, só com for, ou loop mesmo

opa manda todo codigo ai...... que eu faço

Link para o comentário
Compartilhar em outros sites

  • 0
você não pode simplesmente usar um select top?

"select top 5 from tabela order by id desc"

pega 5 registros de acordo com o id do maior para o menor....

Aff cara, todo mundo sabe que isso não funciona né dry.gifdry.gifdry.gif Se você fizer funcionar isso te dou 50 reais, não tem como, só com for, ou loop mesmo

opa manda todo codigo ai...... que eu faço

Mandar que codigo cara? Tenta fazer um select com top 5 ai, pra ver se funciona wink.gif Vai dar erro.. Olhe ai wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0
você não pode simplesmente usar um select top?

"select top 5 from tabela order by id desc"

pega 5 registros de acordo com o id do maior para o menor....

Aff cara, todo mundo sabe que isso não funciona né dry.gifdry.gifdry.gif Se você fizer funcionar isso te dou 50 reais, não tem como, só com for, ou loop mesmo

Eu não sei qual a base de dados que ele está utilizando mas em access funciona que eu já fiz isso...

A única diferença é que era com top 10 e não com top 5...

Se for base de dados em access eu vou aceitar os 50 conto hehehehe abraços Daniel!!!

Link para o comentário
Compartilhar em outros sites

  • 0

Provavelmente o banco é diferente, nunca utilizei outro banco, mas sei que a sintaxe de "top" muda em alguns banco de dados, por exemplo acho que no SQL se usa LIMIT ao invés de TOP, talvez seja isso, porque garanto que TOP funciona no ACCESS, posso provar de pois passo minha conta... rs

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Em todos os PCS que eu fui, da minha prima, do meu primo, do meu tio, do meu amigo, nunca deu pra usar esse top, ai... Mas mesmo se funciona, só mais usar o meu script tongue.gif

Bareta, aquilo era só bricadeira, mais ainda não vi o link com o codigo funfando wink.gif hahahahhaha

[]'s

Victor

Link para o comentário
Compartilhar em outros sites

  • 0
Em todos os PCS que eu fui, da minha prima, do meu primo, do meu tio, do meu amigo, nunca deu pra usar esse top, ai... Mas mesmo se funciona, só mais usar o meu script tongue.gif

Bareta, aquilo era só bricadeira, mais ainda não vi o link com o codigo funfando wink.gif hahahahhaha

[]'s

Victor

pode ficar tranquilo companheiro..... também tava zuando...... mais tipo...

qual banco de dados que é? acess ou sql????

Link para o comentário
Compartilhar em outros sites

  • 0

Galera !!!

Antes de mais nada..

Independente do Banco de dados usado, o Select TOP funciona!

Pois, ele é um simples comando do SQL

Não tem nada a ver com o tipo de banco de dados usado!

Podem fazer o teste que quiserem, ele vai funcionar sim senhor!

Um exemplo simples de codigo:

sql = "select top 5 from tabela"

set rs = conexao.execute(sql)

do while not rs.eof

response.write rs("campo")

rs.moveNext

loop

simples, né?

1- Cria o sql

2- Executa o SQL, armazenando o resultado num recordset

3- Faz um loop, percorrendo todo o recordset, que deve conter o select top 5

Não se precipitem, hehehe

Qualquer Comando SQL, funciona com qualquer banco de dados!

Abraços!

Dark

Link para o comentário
Compartilhar em outros sites

  • 0
Em todos os PCS que eu fui, da minha prima, do meu primo, do meu tio, do meu amigo, nunca deu pra usar esse top, ai... Mas mesmo se funciona, só mais usar o meu script tongue.gif

Bareta, aquilo era só bricadeira, mais ainda não vi o link com o codigo funfando wink.gif hahahahhaha

[]'s

Victor

pode ficar tranquilo companheiro..... também tava zuando...... mais tipo...

qual banco de dados que é? acess ou sql????

SQL não é um banco de dados... SQL SERVER que é... Mas eu uso o access 2000 mesmo, e não funciona de jeito nenhum... Mas deixa pra la, só mais do meu jeito mesmo tongue.giftongue.giftongue.giftongue.gif hauhauahuauah

Pode deixar, que quando eu ficar rico eu lembro de você smile.gifcool.gif

Link para o comentário
Compartilhar em outros sites

  • 0

com certeza você deve tar fazendo algo errado victor

pois, não tem um motivo concreto pro comando não funcionar

o unico motivo que eu vejo, é codigo errado!

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Olá galera!

Fiz alguns testes com as funções que me passaram, e escolhi usar o que o VICTOR passou, mas fiz algumas alterações...

Vejam como ficou.

<!--#include file="configteste.asp" -->

<%

dim conn, rs, sql

set conn = server.createobject ("ADODB.connection")

Set rs =Server.CreateObject("ADODB.Recordset")

conn.Open caminhoBD

SQL = "select * from tabela order by id"

Rs.Open sql, conn

If rs.BOF Then

Response.Write "Nenhum usuario cadastrado"

else

dim texto(5)

dim id(5)

z=1

while not rs.EOF

texto(z) =rs("texto")

id(z)=rs("id")

z=z+1

rs.MoveNext

wend

rs.Close

end if

response.write id(1)&" - "&texto(1)&"<br>"

response.write id(2)&" - "&texto(2)&"<br>"

response.write id(3)&" - "&texto(3)&"<br>"

response.write id(4)&" - "&texto(4)&"<br>"

response.write id(5)&" - "&texto(5)&"<br>"

%>

Mas só tem uma coisa que não consegui fazer... se no banco de dados for maior que 05 registro por exemplo 100, ele da o seguinte erro!

Tipo de erro:

Erro de tempo de execução do Microsoft VBScript (0x800A0009)

Subscrito fora do intervalo: 'z'

/ex/exibir_05_registro1.asp, line 18

Como faço para tirar esse erro, pois na tabela podem contar vários registros e assim cada vez que eu inserir um novo registro ele tem que pegar somente os ultimos 05 registros cadastrados.

Valeu galera... Os comonados SELECT TOP funcionou perfeitamente, mas tem que ser como o dark0 postou aí se não não funciona.

Link para o comentário
Compartilhar em outros sites

  • 0

Você tem que ir mudando de acordo com quantos você vai querer... Mas se você for fazer com mais de 10 faz com o top wink.gif

Ou faça:

<!--#include file="configteste.asp" -->

<%

dim conn, rs, sql

set conn = server.createobject ("ADODB.connection")

Set rs =Server.CreateObject("ADODB.Recordset")

conn.Open caminhoBD

SQL = "select * from tabela order by id"

Rs.Open sql, conn

If rs.BOF Then

Response.Write "Nenhum usuario cadastrado"

else

dim texto(10)

dim id(10)

z=1

while not rs.EOF

texto(z) =rs("texto")

id(z)=rs("id")

z=z+1

rs.MoveNext

wend

rs.Close

end if

response.write id(1)&" - "&texto(1)&"<br>"

response.write id(2)&" - "&texto(2)&"<br>"

response.write id(3)&" - "&texto(3)&"<br>"

response.write id(4)&" - "&texto(4)&"<br>"

response.write id(5)&" - "&texto(5)&"<br>"

response.write id(5)&" - "&texto(6)&"<br>"

response.write id(5)&" - "&texto(7)&"<br>"

response.write id(5)&" - "&texto(8)&"<br>"

response.write id(5)&" - "&texto(9)&"<br>"

response.write id(5)&" - "&texto(10)&"<br>"

%>

Mas se você for fazer mais, faz com TOP

Link para o comentário
Compartilhar em outros sites

  • 0

Victor acho que você não entendeu... Serão somente 05 registro mesmo...

O problema é que se no banco de dados tiver mais que 05 registro cadastrados ele exibe o erro acima que citei... Eu não consegui colocar um tratamento para esse erro. Pois terei que sempre cadastrar novos registros e não poderei apagar os anteriores...

Se souber como faço para colocar um tratamento de erro, posta aí... vou continuar tentatndoa aqui.

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
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...