[firebase-br] Update Geral

Willian Jorge Oliveira wijloc em gmail.com
Sex Out 24 13:50:30 -03 2014


Tem um first 3 no ínicio, mas imagino que seja só pra diminuir a carga de
testes... Mas a solução seria essa mesmo...

Em 24 de outubro de 2014 13:42, Reginaldo Jose Fiomano <
reginaldo.fiomano em gmail.com> escreveu:

> Eduardo no meu caso essa procedure deu certo para atualizar campos VARCHAR
> de todas as tabelas da uma olhada se te ajuda.
>
> SET TERM ^ ;
>
> create or alter procedure PRO_CAMPOS_VARCHAR
> as
> declare variable COD_TABELA integer;
> declare variable NOME_TABELA varchar(40);
> declare variable CAMPO varchar(100);
> declare variable TIPO varchar(30);
> declare variable SQL varchar(200);
> begin
>   for select first 3 cast(RDB$RELATIONS.RDB$RELATION_ID as integer)
> COD_TABELA,
>                      cast(RDB$RELATIONS.RDB$RELATION_NAME as varchar(40))
> NOME_TABELA
>       from RDB$RELATIONS
>       where ((RDB$RELATIONS.RDB$SYSTEM_FLAG = 0) and
>             (RDB$RELATIONS.RDB$RELATION_TYPE = 0))
>       order by RDB$RELATIONS.RDB$RELATION_NAME
>       into :COD_TABELA, :NOME_TABELA
>   do
>   begin
>     for select A.RDB$FIELD_NAME NOME_DO_CAMPO, C.RDB$TYPE_NAME TIPO
>                --  B.RDB$FIELD_SUB_TYPE SUBTIPO,
>                -- B.RDB$FIELD_LENGTH TAMANHO,
>                --  B.RDB$SEGMENT_LENGTH SEGMENTO,
>                --  B.RDB$FIELD_PRECISION PRECISAO,
>                -- B.RDB$FIELD_SCALE CASAS_DECIMAIS,
>                --A.RDB$DEFAULT_SOURCE VALOR_PADRAO,
>                --A.RDB$NULL_FLAG OBRIGATORIO
>         from RDB$RELATION_FIELDS A, RDB$FIELDS B, RDB$TYPES C
>         where (A.RDB$RELATION_NAME = :NOME_TABELA) and
>               (B.RDB$FIELD_NAME = A.RDB$FIELD_SOURCE) and
>               (C.RDB$TYPE = B.RDB$FIELD_TYPE) and
>               (C.RDB$FIELD_NAME = 'RDB$FIELD_TYPE') and
>               (C.RDB$TYPE_NAME = 'VARYING')
>         order by RDB$FIELD_POSITION
>         into :CAMPO, :TIPO
>     do
>     begin
>       NOME_TABELA = trim(:NOME_TABELA);
>       CAMPO = trim(:CAMPO);
>       SQL = 'update ' || :NOME_TABELA || ' set ' || trim(:CAMPO) || ' = '
> || 'upper(' || :CAMPO || ')';
>       execute statement :SQL;
>     end
>   end
> end^
>
> SET TERM ; ^
>
> /* Existing privileges on this procedure */
>
> GRANT EXECUTE ON PROCEDURE PRO_CAMPOS_VARCHAR TO INTEGRATIVAMASTER;
>
> Em 24 de outubro de 2014 11:28, Willian Jorge Oliveira <wijloc em gmail.com>
> escreveu:
>
> > A dica do Walter é ideal, você usa as tabelas do Sistema para obter os
> > dados necessários...
> >
> > Att,
> >
> > Em 24 de outubro de 2014 11:15, Reijanio Nunes Ribeiro <
> > rnribeiro em gmail.com>
> > escreveu:
> >
> > > no seu select vc pode usar a clausula upper pra que sejam os campos
> sejam
> > > exibidos em maiúsculas bastas discriminar os campos upper(campo1,
> > > upper(campo2) que irão aparecer em maiúscula no seu sistema
> > >
> > > 2014-10-23 21:10 GMT-03:00 Walter R. Ojeda Valiente <
> > > sistemas2000profesional em gmail.com>:
> > >
> > > > No, no existe tal comando y tampoco es lógico que existiera, pero
> > puedes
> > > > escribir un stored procedure que realice esa tarea:
> > > > 1. Para cada tabla de la Base de Datos
> > > > 2. Para cada columna de esa tabla
> > > > 3. Si su tipo es CHAR o VARCHAR entonces le aplica la función UPPER()
> > > >
> > > > Saludos.
> > > >
> > > > Walter.
> > > >
> > > >
> > > > 2014-10-23 19:56 GMT-04:00 Eduardo Belo <beloelogica em gmail.com>:
> > > >
> > > > > Prezados,
> > > > >
> > > > > Preciso converter para Maiúscula (Upper) todos os campos do tipo
> > > VarChar
> > > > e
> > > > > Char de todas as tabelas de uma determinada base.
> > > > >
> > > > > Existe algum comando que possa fazer isso de uma vez só?
> > > > >
> > > > >
> > > > >
> > > > > Agradeço antecipadamente a todos que ajudarem.
> > > > >
> > > > > Eduardo Belo
> > > > > ______________________________________________
> > > > > FireBase-BR (www.firebase.com.br) - Hospedado em
> www.locador.com.br
> > > > > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > > > > http://www.firebase.com.br/fb/artigo.php?id=1107
> > > > > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> > > > >
> > > > ______________________________________________
> > > > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > > > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > > > http://www.firebase.com.br/fb/artigo.php?id=1107
> > > > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> > > >
> > >
> > >
> > >
> > > --
> > > Reijanio Nunes Ribeiro
> > > Desenvolvedor Delphi/Php
> > > Suporte em TI
> > > ______________________________________________
> > > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > > http://www.firebase.com.br/fb/artigo.php?id=1107
> > > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> > >
> >
> >
> >
> > --
> > Willian Oliveira
> > Desenvolvedor de Software | Realtec Sistemas | http://goo.gl/1Hx7do
> > Sistemas de Informação | UFV - Campus Rio Paranaíba |
> http://goo.gl/uNWxjY
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 
Willian Oliveira
Desenvolvedor de Software | Realtec Sistemas | http://goo.gl/1Hx7do
Sistemas de Informação | UFV - Campus Rio Paranaíba | http://goo.gl/uNWxjY



Mais detalhes sobre a lista de discussão lista