[firebase-br] Identificador para tabelas

Eduardo Jedliczka eduardo em gerasoft.com.br
Ter Maio 3 13:10:12 -03 2005


Seu problema é facilmente resolvido com uma SP que executa uma Select
Dinâmico.

No FireBird 2.0, poderia ser resolvido com um Execute Block. Acho que você
está tentando "Piorar" o seu sistema para permitir que o usuário ganhe um
pequeno benefício.

Continuo não entendendo o objetivo disto, apesar de compreender o
problema...

Outra coisa, campos computed by com selects são extremamente lentos. forçam
ao banco disparar uma consulta por registro da tabela "PAI".

[s]

==========================
Eduardo Jedliczka
Gerasoft Informática
Apucarana - Pr
==========================

----- Original Message ----- 
From: "Edson T. Marques" <marques em oriontec.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Tuesday, May 03, 2005 12:19 PM
Subject: Re: [firebase-br] Identificador para tabelas


> Seria num select.
>
> imagine um banco de dados onde exista dias tabelas, uma tabela de
> clientes e outra de pedidos. A tabela de Pedidos se ralaciona com a de
> clientes. Eu quero criar um campo calculado na tabela de Pedidos para me
> dar o Nome do cliente a ele associado, assim:
>
> alter table PEDIDOS add NOMECLI computed by ((select C.NOME from
> CLIENTES C whete C.CODIGO_CLI = xxx.CODIGO_CLI))
>
> "xxx." seria este identificador.
>
> O meu caso é distinto, eu sei que poderia usar junção, eu sei que
> poderia usar PEDIDO no lugar de xxx (isso dá certo para campos
> calculados criados dessa forma), sei que existem, emfim outras
> alternativas para ter o NOME do cliente no meu result set. Mas o meu
> problema não é ter o nome do cliente, meu problema é ter uma forma
> "genérica" de referenciar a tabela de pedidos para o select mostrado
> acima. Isso me permitiria fazer outas coisas como definir um domínio
> para o campo calculado e usar este domínio sempre que eu necessitasse do
> Nome do Cliente em qualquer tabela.
>
> Sim, sim, isso remete a uma mensagen que eu enviei há algum tempo
> (DUVIDA SOBRE DOMÍNIOS) depois eu mesmo respondí dizendo que tinha
> achado uma solução. Acontece que minha solução está furando por causa
> desse problema acima.
>
> Pessoal, muito obrigado pelas dicas.
> Eduardo. valeu a atenção! Mas, sei não, acho que tô meio numa furada.
> Não tô conseguindo pensar numa saída decente pra este problema...
>
> Té mais.
> Edson T. Marques
>
>
>
> Eduardo Jedliczka escreveu:
>
> >Como assim ???? Qual seria a utilidade ??? Poderia dar um exemplo??? esta
> >referência seria numa SP, Trigger, Select ???
> >
> >[s]
> >
> >==========================
> >Eduardo Jedliczka
> >Gerasoft Informática
> >Apucarana - Pr
> >==========================
> >
> >----- Original Message ----- 
> >From: "Edson T. Marques" <marques em oriontec.com.br>
> >To: "FireBase" <lista em firebase.com.br>
> >Sent: Tuesday, May 03, 2005 9:32 AM
> >Subject: [firebase-br] Identificador para tabelas
> >
> >
> >
> >
> >>Olá amigos; Bom dia!
> >>
> >>Gostaria de saber se O Firebird disponibiliza algum identificador
> >>genérico para a tabela.
> >>
> >>Vou exemplificar: No Delphi quando eu crio uma classe nova herdando de
> >>TForm, por exemplo, eu posso implementar métodos privados privados para
> >>essa classe. Então, de qualquer outro médodo dentro da mesma classe eu
> >>posso referenciar meus métodos privados usando "self" (Self.Privado1).
> >>Não há necessidade de eu usar referência direta ao nome da classe
> >>(TForm1.Privado1). Estou considerando então que "self " seja a forma
> >>"genérica" de eu fazer referência à classe.
> >>
> >>É isso que eu gostaria de saber se existe no Firebird para a Tabela.
> >>
> >>Se não existe ou se não sabem alguém teria uma idéia para fabricar algo
> >>similar de outra forma?
> >>
> >>Desde já agradeço.
> >>Edson T. Marques
> >>
> >>
> >>______________________________________________
> >>FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> >>Para editar sua configuração na lista, use o endereço
> >>
> >>
> >http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> >
> >
> >>Para consultar mensagens antigas:
> >>
> >>
> >http://search.gmane.org/search.php?group=firebase
> >
> >
> >>
> >>
> >
> >
> >______________________________________________
> >FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> >Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> >Para consultar mensagens antigas:
http://search.gmane.org/search.php?group=rebase
> >
> >
> >
> >
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas:
http://search.gmane.org/search.php?group=firebase
>
>





Mais detalhes sobre a lista de discussão lista