Ir para conteúdo

POWERED BY:

Arquivado

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

paulofbc

Como faço para chamar 3 tabelas em um BD????

Recommended Posts

Olá galera, estou com a seguinte dúvida.

 

Como faço para chamar 3 tabelas ao mesmo tempo na hora que eu clicar em um certo link, tipo eu tenho as tabelas media,media2003 media2004 no meu banco de dados, agora eu tenho que informar no select o valor para que ela possam ler os dados dentro de cada tabela.

 

o código é esse:

 

<%id_mes = request.querystring("ID_MES")set rx = Server.CreateObject("ADODB.Recordset")rx.ActiveConnection = Conexao[COLOR=blue]rx.Source = "Select media from media2003 where mes="& ID_MES &""[/COLOR]rx.CursorType = 0rx.CursorLocation = 2rx.LockType = 3rx.Open()rx_numRows = 0%>

Para visualizar meu projeto, acesse: BNC

 

Obs: Se voces observarem, abaixo, tem alguns links com os meses de 2002,2003 e 2004, quando eu clico no mes de janeiro de 2002 ele me informará abaixo na tabela de mes e dia uma média final e quando eu clico no mes de janeiro de 2003 ele me dará a mesma média, mas com mes e dia diferentes na tabela.

 

Ele está fazendo está listagem de média repetidas para todos os anos porque eu dei o seguinte select:

rx.Source = "Select media from media2003 where mes="& ID_MES &""

 

 

O que eu quero fazer na verdade é das um select nas 03 tabelas que eu tenho no meu banco de dados, como fazer isso ????

 

 

Voces me entenderam ???

 

 

Vlws!!!

 

 

Paulo Cardoso

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oiii....

Tenta o seguinte:

 

<%

id_mes = request.querystring("ID_MES")

set rx = Server.CreateObject("ADODB.Recordset")

rx.ActiveConnection = Conexao

 

rx.Source = "Select media2003.*, media2004.*, media.* from media2003, media2004, media where mes="& ID_MES &""

rx.CursorType = 0

rx.CursorLocation = 2

rx.LockType = 3

rx.Open()

rx_numRows = 0

%>

 

 

eu nao manjo mto mas minha miguinha ki do trampo me passo uma cola, preu pode tenta resolve seu problema.... ^_^

valews....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oiii....

Tenta o seguinte:

 

<%

id_mes = request.querystring("ID_MES")

set rx = Server.CreateObject("ADODB.Recordset")

rx.ActiveConnection = Conexao

 

rx.Source = "Select media2003.*, media2004.*, media.* from media2003, media2004, media where mes="& ID_MES &""

rx.CursorType = 0

rx.CursorLocation = 2

rx.LockType = 3

rx.Open()

rx_numRows = 0

%>

 

 

eu nao manjo mto mas minha miguinha ki do trampo me passo uma cola, preu pode tenta resolve seu problema.... ^_^

valews....

e o campo mes do where, vem de que tabela ???? :rolleyes:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Lilian, tudo bl ???

 

Kra, eu adaptei isso que voce me passou no meu código e não funcionou.

 

Ele gerou o seguinte erro:

 

Microsoft JET Database Engine erro '80004005'

 

O campo especificado 'mes' pode se referir a mais de uma tabela relacionada na cláusula FROM da instrução SQL.

 

/lme/exibe_table.asp, line 72

 

 

Voce pode visualizar a página que ta dando o problema Clicando aqui

 

 

Aguardo resposta.

 

 

Paulo Cardoso

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu voltei como estava antes, eu tirei os códigos que voce me passou, mas mesmo assim nao está dando certo.Me socorrem!!!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exatamente, acho que voce entedendeu que eu quero, mas como eu faço para por isso no meu código ???T+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi, o que seria este media 1 ??? e estes valores x where mes = x ?????

 

 

 

T+++

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aí vai ele inteirinho:

 

exibe_table.asp

 

<%@LANGUAGE="VBSCRIPT"%><%mes = request.querystring("MES")%><html><head><title>BNC S/A</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head><body><table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">  <tr>    <td valign="top"><font size="2" face="Verdana"><strong>LME - Cobre / Copper <br>      Cash Seller and Settlement - US$/Ton. </strong></font></td>  </tr>  <tr>     <td align="center" valign="top"><p><font size="3" face="Verdana"><strong><%=MES%></strong></font></p>      <table width="360" border="1">        <tr align="center" bgcolor="#0000FF">           <td width="130"><strong><font color="#FFFF00" size="2" face="Verdana">Dia</font></strong></td>          <td width="230"><strong><font color="#FFFF00" size="2" face="Verdana">Compra/Buyer</font></strong></td>        </tr>      </table>      <%   id = request.querystring("ID")Conexao = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:/web/bnc/www/lme/lme.mdb;"' Em seguida, criamos a conexão com o banco. set rs = Server.CreateObject("ADODB.Recordset")rs.ActiveConnection = Conexaors.Source = "Select * From "& ID &" order by Dia"rs.CursorType = 0rs.CursorLocation = 2rs.LockType = 3rs.Open()rs_numRows = 0limite = 0If not rs.EOF then rs.MoveFirst' Enquanto não acabarem as notícias cadastradas, e o limite for menor do que ' 30, continuamos listando-as.While Not rs.EOF and cnt_nr < 30 %>       <table width="360" border="1">        <tr align="center">           <td width="130"><font size="2" face="Verdana"><%=rs("Dia")%></font></td>          <td width="230"><font size="2" face="Verdana"><%=rs("Valor")%></font></td>        </tr>        <%	' Aumenta +1 no valor da variável limite	limite = limite + 1	rs.MoveNext	wend	%>      </table><%' Fecha a conexãors.CloseSet rs = Nothing%><%id_mes = request.querystring("ID_MES")set rx = Server.CreateObject("ADODB.Recordset")rx.ActiveConnection = Conexaorx.Source = "Select media from media2003 where mes="& ID_MES &""rx.CursorType = 0rx.CursorLocation = 2rx.LockType = 3rx.Open()rx_numRows = 0%>      <table width="360" border="1">        <tr align="center">           <td width="130"><strong><font size="2" face="Verdana">Média/Average</font></strong></td>          <td width="230"><strong><font size="2" face="Verdana"><%=rx("Media")%></font></strong></td>        </tr>      </table>      <br><%' Fecha a conexãorx.CloseSet rx = Nothing%><br><font face="Verdana" size="1">Não nos responsabilizamos pelos valores acima.<br>      No nos responsabilizamos por los valores acima.<br>      We are not responsible for the values mentioned.</font> </td>  </tr></table></body></html>

 

T+

Compartilhar este post


Link para o post
Compartilhar em outros sites

SQL = "Select media from media2003 where mes="& ID_MESSQL = SQL + " UNION "SQL = SQL + "Select media from media2004 where mes="& ID_MESSQL = SQL + " UNION "SQL = SQL + "Select media from media2001 where mes="& ID_MESSQL = SQL + " UNION "SQL = SQL + "Select media from media2002 where mes="& ID_MESSQL = SQL + " UNION "SQL = SQL + "Select media from media2000 where mes="& ID_MES

Compartilhar este post


Link para o post
Compartilhar em outros sites

Daria pra voce por estes valores no código que eu lhe passei ???Att,Paulo.

Compartilhar este post


Link para o post
Compartilhar em outros sites
<%@LANGUAGE="VBSCRIPT"%><%mes = request.querystring("MES")%><html><head><title>BNC S/A</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head><body><table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"> <tr>   <td valign="top"><font size="2" face="Verdana"><strong>LME - Cobre / Copper <br>     Cash Seller and Settlement - US$/Ton. </strong></font></td> </tr> <tr>    <td align="center" valign="top"><p><font size="3" face="Verdana"><strong><%=MES%></strong></font></p>     <table width="360" border="1">       <tr align="center" bgcolor="#0000FF">          <td width="130"><strong><font color="#FFFF00" size="2" face="Verdana">Dia</font></strong></td>         <td width="230"><strong><font color="#FFFF00" size="2" face="Verdana">Compra/Buyer</font></strong></td>       </tr>     </table>     <%  id = request.querystring("ID")Conexao = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:/web/bnc/www/lme/lme.mdb;"' Em seguida, criamos a conexão com o banco. set rs = Server.CreateObject("ADODB.Recordset")rs.ActiveConnection = Conexaors.Source = "Select * From "& ID &" order by Dia"rs.CursorType = 0rs.CursorLocation = 2rs.LockType = 3rs.Open()rs_numRows = 0limite = 0If not rs.EOF then rs.MoveFirst' Enquanto não acabarem as notícias cadastradas, e o limite for menor do que ' 30, continuamos listando-as.While Not rs.EOF and cnt_nr < 30 %>      <table width="360" border="1">       <tr align="center">          <td width="130"><font size="2" face="Verdana"><%=rs("Dia")%></font></td>         <td width="230"><font size="2" face="Verdana"><%=rs("Valor")%></font></td>       </tr>       <%' Aumenta +1 no valor da variável limitelimite = limite + 1rs.MoveNextwend%>     </table><%' Fecha a conexãors.CloseSet rs = Nothing%><%id_mes = request.querystring("ID_MES")set rx = Server.CreateObject("ADODB.Recordset")rx.ActiveConnection = ConexaoSQL = "Select media from media2003 where mes="& ID_MESSQL = SQL + " UNION "SQL = SQL + "Select media from media2004 where mes="& ID_MESSQL = SQL + " UNION "SQL = SQL + "Select media from media2001 where mes="& ID_MESSQL = SQL + " UNION "SQL = SQL + "Select media from media2002 where mes="& ID_MESSQL = SQL + " UNION "SQL = SQL + "Select media from media2000 where mes="& ID_MESrx.Source = SQLrx.CursorType = 0rx.CursorLocation = 2rx.LockType = 3rx.Open()rx_numRows = 0%>     <table width="360" border="1">       <tr align="center">          <td width="130"><strong><font size="2" face="Verdana">Média/Average</font></strong></td>         <td width="230"><strong><font size="2" face="Verdana"><%=rx("Media")%></font></strong></td>       </tr>     </table>     <br><%' Fecha a conexãorx.CloseSet rx = Nothing%><br><font face="Verdana" size="1">Não nos responsabilizamos pelos valores acima.<br>     No nos responsabilizamos por los valores acima.<br>     We are not responsible for the values mentioned.</font> </td> </tr></table></body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Kra, eu fiz isso, mas nao deu certo.Da uma olhada no site para voce ver como ficouwww.bnc.com.br/lme/lme.aspT+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Microsoft JET Database Engine erro '80040e37' O mecanismo de banco de dados Microsoft Jet não encontrou a tabela de entrada ou consulta 'media2001'. Certifique-se de que ela existe e de que seu nome está digitado corretamente. /lme/exibe_table.asp, line 81 bota somente as tabelas q existam neheu nao sabia e fui chutandohehehehe

Compartilhar este post


Link para o post
Compartilhar em outros sites
<%@LANGUAGE="VBSCRIPT"%><%mes = request.querystring("MES")%><html><head><title>BNC S/A</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head><body><table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"><tr>  <td valign="top"><font size="2" face="Verdana"><strong>LME - Cobre / Copper <br>    Cash Seller and Settlement - US$/Ton. </strong></font></td></tr><tr>   <td align="center" valign="top"><p><font size="3" face="Verdana"><strong><%=MES%></strong></font></p>    <table width="360" border="1">      <tr align="center" bgcolor="#0000FF">         <td width="130"><strong><font color="#FFFF00" size="2" face="Verdana">Dia</font></strong></td>        <td width="230"><strong><font color="#FFFF00" size="2" face="Verdana">Compra/Buyer</font></strong></td>      </tr>    </table>    <% id = request.querystring("ID")Conexao = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:/web/bnc/www/lme/lme.mdb;"' Em seguida, criamos a conexão com o banco. set rs = Server.CreateObject("ADODB.Recordset")rs.ActiveConnection = Conexaors.Source = "Select * From "& ID &" order by Dia"rs.CursorType = 0rs.CursorLocation = 2rs.LockType = 3rs.Open()rs_numRows = 0limite = 0If not rs.EOF then rs.MoveFirst' Enquanto não acabarem as notícias cadastradas, e o limite for menor do que ' 30, continuamos listando-as.While Not rs.EOF and cnt_nr < 30 %>     <table width="360" border="1">      <tr align="center">         <td width="130"><font size="2" face="Verdana"><%=rs("Dia")%></font></td>        <td width="230"><font size="2" face="Verdana"><%=rs("Valor")%></font></td>      </tr>      <%' Aumenta +1 no valor da variável limitelimite = limite + 1rs.MoveNextwend%>    </table><%' Fecha a conexãors.CloseSet rs = Nothing%><%id_mes = request.querystring("ID_MES")set rx = Server.CreateObject("ADODB.Recordset")rx.ActiveConnection = Conexaorx.Source = "Select media from media" & mid(ID, 4, 4) & " where mes="& ID_MESrx.CursorType = 0rx.CursorLocation = 2rx.LockType = 3rx.Open()rx_numRows = 0%>    <table width="360" border="1">      <tr align="center">         <td width="130"><strong><font size="2" face="Verdana">Média/Average</font></strong></td>        <td width="230"><strong><font size="2" face="Verdana"><%=rx("Media")%></font></strong></td>      </tr>    </table>    <br><%' Fecha a conexãorx.CloseSet rx = Nothing%><br><font face="Verdana" size="1">Não nos responsabilizamos pelos valores acima.<br>    No nos responsabilizamos por los valores acima.<br>    We are not responsible for the values mentioned.</font> </td></tr></table></body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha eu d novo.... ^_^

 

disculpa esqueci de falar pra você especificar de qual tabela o campo mes vem.......

por isso q deu esse erro....

 

Microsoft JET Database Engine erro '80004005'

 

O campo especificado 'mes' pode se referir a mais de uma tabela relacionada na cláusula FROM da instrução SQL.

 

/lme/exibe_table.asp, line 72

 

Pra resolver tem q colorcar where tabela.campo="& ID_MES &" ......

 

Assim:

 

<%

id_mes = request.querystring("ID_MES")

set rx = Server.CreateObject("ADODB.Recordset")

rx.ActiveConnection = Conexao

 

rx.Source = "Select media2003.*, media2004.*, media.* from media2003, media2004, media where media2003.mes="& ID_MES &""

rx.CursorType = 0

rx.CursorLocation = 2

rx.LockType = 3

rx.Open()

rx_numRows = 0

%>

 

tenta ve se funciona.....

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.