Criar Referencia Cruzada
Olá Pessoal, como crio referencia cruzada usando Delphi 7 e PostgreSql..
presciso... a cada vez q eu incluir um registro(linha) em uma tabela.. esse registro se transforme em coluna em uma outra tabela....
no caso.. o nome da coluna na outra tabela será o código do registro...
alguem tem alguma idéia????
estou no aguardo....
presciso... a cada vez q eu incluir um registro(linha) em uma tabela.. esse registro se transforme em coluna em uma outra tabela....
no caso.. o nome da coluna na outra tabela será o código do registro...
alguem tem alguma idéia????
estou no aguardo....
Thiago Coleti
Curtidas 0
Respostas
Motta
26/04/2006
Pelo que entendi , algo assim
mod-venda
------------
cod
desc
01 cartao
02 vista
03 cheque pre
total_vendas
---------------
mes
01
02
03
------------
se criarem
04 tampinhas de garrafa
vc criar uma coluna
04 em total vendas , isto ?
--------------------------
vc poder fazer por trigger na tabela mod-venda crando um comando ddl
para criar a coluna na outra tabela , e se houver alteracao/delecao ??
-----------------------------
informe o bd pois alguns nao suportam certas operacoes
-------------------------------------------------------------
mod-venda
------------
cod
desc
01 cartao
02 vista
03 cheque pre
total_vendas
---------------
mes
01
02
03
------------
se criarem
04 tampinhas de garrafa
vc criar uma coluna
04 em total vendas , isto ?
--------------------------
vc poder fazer por trigger na tabela mod-venda crando um comando ddl
para criar a coluna na outra tabela , e se houver alteracao/delecao ??
-----------------------------
informe o bd pois alguns nao suportam certas operacoes
-------------------------------------------------------------
GOSTEI 0
Thiago Coleti
26/04/2006
Olá Motta.... me confundi um pouco no seu exemplo ... vou tentar explicar pelo meu...
tenho duas tabelas
o que pretendo eh q cada vez q eu inserir um novo registro na tabela locais esse novo registro vire uma coluna na tabela produto
nesse exemplo ficaria :
e se eu inserir o registro 0303 por exemplo... iria incluir a coluna 0303 ... se tiver alguma idéia ..estou no aguardo...
tenho duas tabelas
Produtos Cód Descrição 01 Canetas 02 Lápis Locais Cód Descrição 0101 Matriz 0202 Filial
o que pretendo eh q cada vez q eu inserir um novo registro na tabela locais esse novo registro vire uma coluna na tabela produto
nesse exemplo ficaria :
Produto Cód Descricao 0101 0202
e se eu inserir o registro 0303 por exemplo... iria incluir a coluna 0303 ... se tiver alguma idéia ..estou no aguardo...
GOSTEI 0
Motta
26/04/2006
ok, uma trigger de after insert em locais , faria um comando de ddl de criacao da coluna, mas a mecanica de como fazer depende do BD utilizado.
Com Oracle ficaria algo assim :
não testei , agora se um registro for deletado de locais ?
Com Oracle ficaria algo assim :
CREATE OR REPLACE TRIGGER AFTER INSERT ON locais FOR EACH ROW DECLARE aux varchar2(255); BEGIN aux := ´ALTER TABLE PRODUTOS ADD ´ ||NEW.COD||´NUMBER(3);´; EXECSQL(AUX); END; /
não testei , agora se um registro for deletado de locais ?
GOSTEI 0
Thiago Coleti
26/04/2006
Olá Motta.... esqueci de informar qual DB eu uso..
uso PostgreSql.... conhece como faria nele??
estou no aguardo.. obrigado..
uso PostgreSql.... conhece como faria nele??
estou no aguardo.. obrigado..
GOSTEI 0
Motta
26/04/2006
Thiago, infelizmente não domino o ´putzgrila´ , mas acho que o esquema poderia ser o mesmo , pois ele suporta trigger *, mas acho isto meio precário, não seria melhor centralizar o acesso à esta coluna ? afinal não se cria filial todo dia.
* A questão é saber a sintaxe e como executar um comando de DDL.
* A questão é saber a sintaxe e como executar um comando de DDL.
GOSTEI 0