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

(Resolvido) Relacionamentos


Vivendo&Aprendendo

Pergunta

6 respostass a esta questão

Posts Recomendados

  • 0

Oi, 'Vivendo&Aprendendo'

Basicamente o acesso aos dados de um relacionamento está no uso das variações da cláusula JOIN.

Exemplo: Seja a tabela funcionário com os atributos idfuncionario (chave primária) e nmfuncionario, uma segunda tabela chamada dependente (que conterá a relação de dependentes deste funcionário) com os atributos idfuncionario e nmdependente

A chave criada para a tabela dependentes é o atributo idfuncionario (indice não único).

tabela funcionario
1 antonio
2 ana
3 maria

tabela dependente
1 carlos
3 marta
Executando o
SELECT f.idfuncionario, f.nome_funcionario, d.nmdependente
FROM funcionario f
INNER JOIN dependentes d ON f.idfuncionario = d.idfuncionario
O retorno do sql seria
1 antonio carlos
3 maria marta
Ou seja somente os registros onde as duas tabelas possuissem idfuncionario iguais Para obter uma listagem completa eu deveria usar o seguinta sql:
SELECT f.idfuncionario, f.nome_funcionario, d.nmdependente
FROM funcionario f
LEFT JOIN dependentes d ON f.idfuncionario = d.idfuncionario
O retorno do sql seria
1 antonio carlos
2 ana null
3 maria marta

Note que o funcionario 2 (ana) retornou o dependente como nulo.

Existem outras variações. Estude sobre modelos EER e SQL.

Link para o comentário
Compartilhar em outros sites

  • 0

Mas Denis Courcy, tem como usar algum aplicativo para fazer os relacionamentos? Eu achei um tutorial sobre o MySql Query Browser sobre como fazer os relacionamentos mas não funcionou.

Eu não sou muito bom em sql e se caso tivesse como fazer sem ser por código seria melhor.

Se souber como alguardo resposta.

Abraço

Link para o comentário
Compartilhar em outros sites

  • 0
Mas Denis Courcy, tem como usar algum aplicativo para fazer os relacionamentos? Eu achei um tutorial sobre o MySql Query Browser sobre como fazer os relacionamentos mas não funcionou.

Eu não sou muito bom em sql e se caso tivesse como fazer sem ser por código seria melhor.

Se souber como alguardo resposta.

Abraço

Sinceramente Vivendo&Aprendendo já que es iniciante devia perder um tempo e se dedicar mais a aprender corretamente a sintaxe do SQL. Pois manipular dados em banco de dados é a alma de qualquer aplicação. E sem não aprender direito você vai acabar vivendo&sofrendo.

Não estou pagando um sapo mas infelizmente em informática para se conseguir fazer as coisas corretamente têm de haver uma dose de sofrimento. :o)

Um forma de gerar os JOIN´s através de assitente seria vincular suas tabelas mysql no Access e depois utilizar o assitente do Access para criar os relacioamentos.

Mas acho isso é uma saida muito deselegante! Agora se você se dedeicar uns 5 dias lendo e exercitando você aprenderia tudo de maneira mais completa e profissional. O mesmo pode ser feito no SQL Server e utilizar o assitente do Enterprise Manager para gerar os relacionamentos.

Agora se você quer mesmo trabalhar na área cara não têm caminho fácil. você terá toda a juda possivel na net. Mas na maioria das vezes lhe darão a vara e ensinaram a pescar. nunca o peixe.

Editado por jothaz
Link para o comentário
Compartilhar em outros sites

  • 0

Oi, 'Vivendo&Aprendendo'

Pelo que sei, você programa na mesma linguagem que eu (Delphi). E neste caso, não há jeito. Muitos dos códigos que você terá que escrever, terão que ser em SQL. Muitas vezes os TTables não resolverão sua situação e você terá que usar os TQuery da vida.

Principalmente os reports.

Um abraço

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