Criar array a partir de linhas de uma tabela

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
rodfbar
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 241
Registrado em: Ter, 09 Out 2007 11:15 am
Localização: Batatais - SP

Galera bom dia


por gentileza alguém saberia como posso criar um array (type) dinamico a partir de colunas cadastradas em uma tabela

tenho uma tabela que esta cadastrado o nome e o tipo de cada coluna
Ex.:
Nome Tipo
------------- ------------------------
id_teste number
nm_teste varchar2

dai o meu array teria que sair neste formato...


Obrigado.
Avatar do usuário
Bogos
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 20
Registrado em: Ter, 06 Jul 2010 8:58 am
Localização: Americana / SP
Contato:
Ivens Bógos
Analista Desenvolvedor Oracle

Você pode usar uma table do tipo anydata type.
Para setar os valores você precisa sempre usar a função sys.anydata para efetuar a conversão.

Selecionar tudo

sys.anydata.CONVERTVARCHAR(valor1);
sys.anydata.CONVERTNUMBER(valor2);
sys.anydata.CONVERTCLOB(valor3);
Avatar do usuário
fsitja
Rank: OraSauro
Rank: OraSauro
Mensagens: 611
Registrado em: Seg, 19 Jan 2009 4:29 pm
Localização: Gaúcho no Rio de Janeiro - RJ
"The scars exist to remind us that the past was real"
Campanha: Como fazer uma pergunta e obter uma resposta.
http://tkyte.blogspot.com/2005/06/how-t ... tions.html

OCA & OCP Developer — OCE SQL Expert — OCS Data Warehousing Specialist

Se for para usar em fetch de cursor em PL/SQL e tal, é só declarar a variável no "DECLARE" com o %rowtype:

Selecionar tudo

DECLARE
  v_array_minha_tab minha_tab%rowtype;
BEGIN
  ...
  -- abre cursor, faz o fetch para dentro da tabela e etc.
END;
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes