Relacionamentos de Tabelas Delphi com Interbase
Ola galera ,
Estou iniciando no interbase e estou com problema de sql, na hora de fazer relacionamento de tabelas, eu ja olhei alguns ex. por aqui, mas nao estou entedendo muito bem,... ja olhei algo a respeito do interbase, o uso da funcao select e join , mas nao entendi muito bem....
mas minha pergunta e como eu faco para relacionar duas ou mais tabelas entre si,,..
ex.:
tabelas
Cliente : Id_cliente | Nome
Vendas : Id_vendas | descricao | Nome -> seria da Tabela de Clientes..
se alguem tiver um exemplo pratico...
valeu muito obrigado...
Estou iniciando no interbase e estou com problema de sql, na hora de fazer relacionamento de tabelas, eu ja olhei alguns ex. por aqui, mas nao estou entedendo muito bem,... ja olhei algo a respeito do interbase, o uso da funcao select e join , mas nao entendi muito bem....
mas minha pergunta e como eu faco para relacionar duas ou mais tabelas entre si,,..
ex.:
tabelas
Cliente : Id_cliente | Nome
Vendas : Id_vendas | descricao | Nome -> seria da Tabela de Clientes..
se alguem tiver um exemplo pratico...
valeu muito obrigado...
Alexf11
Curtidas 0
Respostas
Aroldo Zanela
16/01/2004
Colega,
Para você juntar uma ou mais tabelas você precisa que exista uma chave estrangeira que pode ser composta de uma ou mais colunas.
Suponha que você tenha uma tabela de vendas e outra com o cadastro dos clientes. Na tabela de vendas deve ter uma chave estrangeira para ´apontar´ para o registro que a venda pertence na tabela de de clientes.
Vendas
cod_produto, qtde, cod_cliente, emissao
Clientes
cod_cliente, nome
Para você juntar uma ou mais tabelas você precisa que exista uma chave estrangeira que pode ser composta de uma ou mais colunas.
Suponha que você tenha uma tabela de vendas e outra com o cadastro dos clientes. Na tabela de vendas deve ter uma chave estrangeira para ´apontar´ para o registro que a venda pertence na tabela de de clientes.
Vendas
cod_produto, qtde, cod_cliente, emissao
Clientes
cod_cliente, nome
SELECT * FROM vendas INNER JOIN clientes ON vendas.cod_cliente = clientes.cod_cliente
GOSTEI 0
Wolverine
16/01/2004
:lol:
tenho um exemplo comple, envia uma mensagem para
marcioviniciusdias@bol.com.br
tenho um exemplo comple, envia uma mensagem para
marcioviniciusdias@bol.com.br
GOSTEI 0
Sremulador
16/01/2004
Verifique este exemplo bem simples.
/*pai*/
CREATE TABLE PACIENTES (
PACD INTEGER NOT NULL,
PANM VARCHAR (50) CHARACTER SET NONE NOT NULL COLLATE NONE,
PARL INTEGER);
/*chave primaria*/
ALTER TABLE PACIENTES ADD CONSTRAINT PK_PACD PRIMARY KEY (PACD);
/*filho*/
CREATE TABLE AMBULATORIO (
AMPA INTEGER NOT NULL,
AMCD INTEGER NOT NULL,
AMCX INTEGER);
/* Primary keys definition */
ALTER TABLE AMBULATORIO ADD CONSTRAINT PK_AMBULATORIO PRIMARY KEY (AMCD);
/* Foreign keys definition chaves estrangeiras*/
ALTER TABLE AMBULATORIO ADD CONSTRAINT FK_AMBULATORIO FOREIGN KEY (AMPA) REFERENCES PACIENTES (PACD) ON DELETE CASCADE ON UPDATE CASCADE;
/*pai*/
CREATE TABLE PACIENTES (
PACD INTEGER NOT NULL,
PANM VARCHAR (50) CHARACTER SET NONE NOT NULL COLLATE NONE,
PARL INTEGER);
/*chave primaria*/
ALTER TABLE PACIENTES ADD CONSTRAINT PK_PACD PRIMARY KEY (PACD);
/*filho*/
CREATE TABLE AMBULATORIO (
AMPA INTEGER NOT NULL,
AMCD INTEGER NOT NULL,
AMCX INTEGER);
/* Primary keys definition */
ALTER TABLE AMBULATORIO ADD CONSTRAINT PK_AMBULATORIO PRIMARY KEY (AMCD);
/* Foreign keys definition chaves estrangeiras*/
ALTER TABLE AMBULATORIO ADD CONSTRAINT FK_AMBULATORIO FOREIGN KEY (AMPA) REFERENCES PACIENTES (PACD) ON DELETE CASCADE ON UPDATE CASCADE;
GOSTEI 0
Alexf11
16/01/2004
valeu galera.... muito obrigado, irei estudar em cima dos exemplos...
ate +
ate +
GOSTEI 0