Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

lezão

Duas tabelas de relacionadas

Recommended Posts

Ola galera estou com probleminha !

 

tenho duas tabelas de relacionadas

 

 

Tabela 1 Tabela 2

CATEGORIA_PROVAS x ETAPAS

 

Cod Cod

Categoria CodCategoria

Cidade

Local

Data

 

estou tentando fazer while das duas no mesmo select

 

veja como fica ?

 

http://www.mnprovascronometradas.com.br/10.asp

 

esta repetindo etapas para as duas categorias

 

 

Codigo html

<%

Call AbreBanco()

Dim Categorias
Set Categorias = Banco.Execute("SELECT * FROM Categorias_Provas  ORDER BY Categoria DESC")

%>

<%

 WHILE NOT Categorias.EOF
 
 %>

<table width="980" border="0" cellspacing="6" cellpadding="0">
  <tr>
    <td>
    <fieldset>
<table width="980" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="368" rowspan="8" valign="top">
      
      <table width="370" border="0" cellspacing="3" cellpadding="0">
        <tr>
          <td width="85" class="texto" style="border-bottom: 1px solid #CCC"></td>
          <td width="106" class="texto" style="border-bottom: 1px solid #CCC"><div align="center"><font size="3" color="#000000" face="Arial">
            <b>Data</b>
            </font>
            
            </div></td>
          <td width="167" class="texto" style="border-bottom: 1px solid #CCC"><div align="center"><font size="3" color="#000000" face="Arial">
            <b>Cidades</b>
            </font>
            
            </div></td>
          </tr>
          
     
          
          
 <%
 
Call AbreBanco() 
 
Dim Etapas
Set Etapas = Banco.Execute("SELECT * FROM Etapas ORDER BY Data ASC")
 
 
 i= 1
 WHILE NOT Etapas.EOF
 
 %>
        <tr>  
          <td width="85" rowspan="2" class="texto" style="border-bottom: 1px solid #CCC"><div align="center"><font size="3" color="#000000" face="Arial"><b><%= i %>ª Etapa:
            </b></font></div></td>
          <td height="27" valign="bottom"><div align="center"><font size="3" color="#000000" face="Arial">
            <b><%=UCase(Etapas("Data"))%></b>
            </font>
            
          </div></td>
          <td class="texto" style="border-right: 1px solid #CCC" valign="bottom"><div align="center"><font size="1" color="#000000" face="Arial">
            <%=UCase(Etapas("Cidade"))%></font>
            
          </div></td>
        </tr>
        <tr>
          <td height="25" colspan="2" valign="bottom" class="texto" style="border-bottom: 1px solid #CCC;border-right: 1px solid #CCC"><div align="center"><font size="1" color="#000000" face="Arial">    
            <%=UCase(Etapas("Local"))%>
            </font>
            </div>
            
            
            </td>
            
            
        </tr>
        <% 
i=i+1
Etapas.MOVENEXT : WEND

%>
  </table>

   
      </td>
    <td colspan="2"><div align="center"><font size="6" color="#000000" face="Arial"><b>
    <%=UCase(Categorias("Categoria"))%>
      </b></font></div></td>
    <td width="153" rowspan="8" valign="bottom">
      
      <table width="145" border="0" cellspacing="3" cellpadding="0">
        <tr>
          <td><span class="hvr-pulse-shrink"><img src="Imagens/btn_premiacoes.png" width="145" height="31"  /></span></td>
          </tr>
        <tr>
          <td><img src="Imagens/btn_regulamento.png" width="145" height="31" class="hvr-pulse-shrink" /></td>
          </tr>
        <tr>
          <td><a href="SubCategoria.asp?Cod=<%=Categorias("Cod")%>" class="hvr-pulse-shrink"><img src="Imagens/btn_classificacoes.png" width="145" height="31"/></a></td>
          </tr>
  </table>
      
      
      
      
      
      </td>
  </tr>
  <tr>
    <td> </td>
    <td> </td>
  </tr>
  <tr>
    <td> </td>
    <td> </td>
  </tr>
  <tr>
    <td> </td>
    <td> </td>
  </tr>
  <tr>
    <td> </td>
    <td> </td>
  </tr>
  <tr>
    <td> </td>
    <td> </td>
  </tr>
  <tr>
    <td width="103"> </td>
    <td width="356"> </td>
    </tr>
  <tr>
    <td> </td>
    <td> </td>
    </tr>
</table>

    
</fieldset>    </td>
  </tr>
</table>
<% Categorias.MOVENEXT : WEND %>

<% 

 Set Categorias = Nothing 
 Set Etapas = Nothing
 
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

usa o INNER JOIN e verifique se o relacionamento entre as tabelas está tudo correto. A importância de uma modelagem de dados bem definida até os mínimos detalhes, como os campos de relacionamentos, um velho ditado diz, que um relacionamento bem definido é a alma do aplicativo, pois daí saem todas as consultas e operações com o banco, influenciando diretamente na otimização e performance do aplicativo

Compartilhar este post


Link para o post
Compartilhar em outros sites

você entedeu minha logica xan?

as vezes naun necessite de INNER JOIN...

 

 

apenas preciso q etapas apareça com os id em cada categoria?

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas com o inner join vc consegue vincular elas no select

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola Xan, boa noite!

 

fiz assim e naun rodou !

<% 
registros = 28
pagina = Request.QueryString("pagina") 
If pagina = "" Then 
pagina = 1 
End If 
 
'Efetuando a conexão com a base de dados criada ----------------------- 
Set conexao = Server.CreateObject("AdoDB.Connection") 
conexao.provider="Microsoft.Jet.OLEDB.4.0" 
conexao.connectionstring=Server.Mappath("Database/DBLojaVirtual.mdb")
conexao.open 
 
Set rs = Server.Createobject("ADODB.RECORDSET") 
set rs.ActiveConnection = Conexao 
rs.CursorType = 3 
rs.PageSize = registros  
 
'sql = "SELECT * FROM Competidores WHERE CodSubCategoria =" & CodCategoria
sql = "SELECT Categorias_Provas.Cod, Categorias_Provas.Categoria, Etapas.Cidade, Etapas.Local, Etapas.Data FROM Categorias_Provas JOIN Etapas ON Categorias_Provas.Cod = Etapas.CodCategoria"
rs.Open sql 
If rs.EOF Then
Response.Write "<center><font face=Verdana color=#FFFF00 size=2><b>Nenhum registro encontrado!</b><br><br><a href=javascript:history.back(-1)><font face=Verdana, Arial, Helvetica, sans-serif size=1 color=#FFFF00>Voltar</font></a> </center></font>"


Else
rs.AbsolutePage = pagina

%>

erro

error '80004005'
/public_html/mnprovascronometradas/11.asp, line 21

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verifique se as permissões estão configuradas corretamente, tanto no arquivo como na pasta. E dê um response.write na sua string SQL para ver o que está sendo passado

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.