Usando 2 tabelas ..... Como faço ?? ..........
:oops: :oops: :oops:
- Uso Delphi 5.0 e Tabela Paradoido 7.0
- As duas tabelas estão no mesmo FORM
- Uma mestre outra detalhe
- Problema 1
- Como faço para não deletar um item mestre se houver item detalhe, ou seja, deletar somente quando não tiver detalhe.
- Mande um exemplo
- Problema 2
- Como faço pra gerar o índice na tabela detalhe uma vez que não é autoincremente ?
Grato...
Jota
- Uso Delphi 5.0 e Tabela Paradoido 7.0
- As duas tabelas estão no mesmo FORM
- Uma mestre outra detalhe
- Problema 1
- Como faço para não deletar um item mestre se houver item detalhe, ou seja, deletar somente quando não tiver detalhe.
- Mande um exemplo
- Problema 2
- Como faço pra gerar o índice na tabela detalhe uma vez que não é autoincremente ?
Grato...
Jota
Jota
Curtidas 0
Respostas
Ildefonso
25/02/2003
Olá, Jota.
Para deletar detalhes, você deve criar um procedimento de evento em BeforeDelete do DataSet principal.
Agora para criar índice??!! Qual índice?...
Caso seja um para a própria tabela de detalhes: crie um campo autoincremental. Não há nada melhor.
Se já houver dados em tal tabela, troque seu nome, crie uma nova com o nome antigo e copie os dados para dentro da nova que o campo autoincremental será manipulado automaticamente.
Se é para criar um índice que vincule a tabela principal com seus detalhe, você não pode criar um índice de chave-primária exclusiva. Por que? Porque podem haver vários detalhes para um mesmo registro principal. Neste caso você só cria um índice para o campo que guarda o valor da chave-primária da tabela ´master´... este campo é o que chamamos de chave-estrageira!
Tudo isso é independente de qual tipo de banco de dados você está usando. São conceitos universais. Para saber mais, vá para o site da Revista ClubeDelphi ([url]http://www.clubedelphi.com.br[/url]). Lá há um link para ´Primeiros Passos´... onde você encontrará um artigo sobre banco de dados que poderá ajudá-lo neste início.
Bom trabalho. 8)
Para deletar detalhes, você deve criar um procedimento de evento em BeforeDelete do DataSet principal.
Agora para criar índice??!! Qual índice?...
Caso seja um para a própria tabela de detalhes: crie um campo autoincremental. Não há nada melhor.
Se já houver dados em tal tabela, troque seu nome, crie uma nova com o nome antigo e copie os dados para dentro da nova que o campo autoincremental será manipulado automaticamente.
Se é para criar um índice que vincule a tabela principal com seus detalhe, você não pode criar um índice de chave-primária exclusiva. Por que? Porque podem haver vários detalhes para um mesmo registro principal. Neste caso você só cria um índice para o campo que guarda o valor da chave-primária da tabela ´master´... este campo é o que chamamos de chave-estrageira!
Tudo isso é independente de qual tipo de banco de dados você está usando. São conceitos universais. Para saber mais, vá para o site da Revista ClubeDelphi ([url]http://www.clubedelphi.com.br[/url]). Lá há um link para ´Primeiros Passos´... onde você encontrará um artigo sobre banco de dados que poderá ajudá-lo neste início.
Bom trabalho. 8)
GOSTEI 0