Ir para conteúdo

POWERED BY:

Arquivado

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

Carlos Moreira

[Resolvido] Buscar em 1,3,5,8

Recommended Posts

faz os relacionamentos entre as tabelas .....

Compartilhar este post


Link para o post
Compartilhar em outros sites

tb_produto

idproduto number pk

nome varchar

 

tb_marca

idmarca number pk

marca varchar

 

tb_produto_marca

idproduto number fk

idmarca number fk

 

Ai eu cadastraria na tb_produto o id da tb_produto_marca?

Compartilhar este post


Link para o post
Compartilhar em outros sites

cadastra o id da tb_produto_marca em tb_produto_marca?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entendi!

 

tb_produto_marca

- idproduto number fk

- idmarca number fk

 

E buscaria com selecte em tb_produto_marca todos os produtos de Id "X" com a Marca de Id "X".

é um pouco mais trabalhoso só porque dai teria que ter outro link no meu administrativo, Por exemplo, cadastar marcas.

 

e nao poderia selecionar as marcas quando estou cadastrando o produto, por exemplo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

isso, faz um INNER JOIN na tabela

Compartilhar este post


Link para o post
Compartilhar em outros sites

exemplo:

 

SELECT INNER JOIN - Utilizamos o inner join em casos que é preciso montar um recordset lendo dados de mais de uma tabela. É uma forma de unir tabelas, e para isso é preciso que haja uma relação entre as mesmas, ou seja, um campo de ligação. É válido dizer que estes campos não precisam conter o mesmo nome, porém devem ser do mesmo tipo.

 

O objetivo desta página é exibir dados de duas tabelas, sendo a de categorias e a de produtos. Imagine você criando um e-commerce onde é preciso mostrar aos internautas quais produtos existem por categorias para que eles possam ter uma visão melhor dos dados contidos no banco de dados. É exatamente nesse caso que utilizamos o inner join.

 

A sintaxe do inner join não é difícil de entender, basta ter os relacionamentos das tabelas para saber como ligá-las e quais ligações são possíveis. De um modo geral, toda vez que citar um campo, especifique qual tabela ele pertence. Veja a sintaxe abaixo:

 

strSQL = "SELECT Categoria.Categoria, Produtos.Produto, Produtos.VRL_Unitario "

Seleciona o campo Categoria da tabela Categoria, os campos Produto e VRL_Unitario da tabela Produtos

 

strSQL = strSQL & "FROM Categoria "

A origem é a tabela Categoria. Isso significa que a tabela Categoria é o lado UM de um relacionamento, e com isso, o recordset é montado mais rapidamente; não que esteja errado colocar a tabela Produtos, mas procure adotar esta regra de boas maneiras de programação em banco de dados.

 

strSQL = strSQL & "INNER JOIN Produtos "

A tabela Categoria citada acima será ligada a tabela Produtos.

 

strSQL = strSQL & "ON Categoria.COD_Categoria = Produtos.COD_Categoria "

Aqui é declarado quais os campos de ligação, sendo o campo COD_Categoria da tabela Categoria e o campo COD_Categoria da tabela Produtos.

 

strSQL = strSQL & "ORDER BY Categoria.Categoria, Produtos.Produto"

É determinado a ordem em que o recordset será exibido, sendo primeiro por categoria e em seguida pelo produto.

 

Repare que estou utilizando a técnica do include file, que invoca as rotinas contidas no arquivo bib_conexao.asp que é encarregada de abrir e fechar a conexão. Para maiores detalhes veja sobre include file.

 

<%
Option Explicit
%>
<!--# include file="bib_conexao.asp"--> 
Dim Conexao, rsProdutos, strSQL
strSQL = "SELECT Categoria.Categoria, Produtos.Produto, Produtos.VRL_Unitario "
strSQL = strSQL & "FROM Categoria "
strSQL = strSQL & "INNER JOIN Produtos "
strSQL = strSQL & "ON Categoria.COD_Categoria = Produtos.COD_Categoria "
strSQL = strSQL & "ORDER BY Categoria.Categoria, Produtos.Produto"
Call abre_conexao
Set rsProdutos = Server.CreateObject("ADODB.Recordset")
Set rsProdutos = Conexao.Execute(strSQL)
Response.Write "Produtos por Categoria<br>" 
While Not rsProdutos.EOF
  Response.Write "categoria: " & rsProdutos("Categoria") & " - "
  Response.Write "produto: " & rsProdutos("Produto") & " - "
  Response.Write "preço: " & FormatNumber(rsProdutos("VRL_Unitario"),2) & "<br>"
  rsProdutos.MoveNext 
Wend
rsProdutos.Close 
Call fecha_conexao
Set rsProdutos = Nothing
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

kker duvida posta ae...

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza....

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.