Passagem de array como parametro para procedure no Oracle 8i

7 respostas
L

Pessoal,

É possível passar um array como parametro para uma procedure no oracle? Se for vc teriam um exemplo ou algum lugar que falasse sobre o assunto.

obrigado

7 Respostas

L

na minha opnião essa prática não é recomendada. Eu também não sei como fazer.

C

Bom, com certeza algum bom guia de SQL ou um manualzao de Oracle tem a resposta, mas eu fiquei curioso: pq vc acha que nao eh uma boa pedida, leomc? :slight_smile:

L

Quem sou eu pra julgar né? mas eu penso… sempre desenvolvi evitanto procedure e triger pra evitar que a aplicação fique amarrada ao banco e que o negócio fique no banco. Isso desde quando usava direto JDBC, evoluimos para DAO, no momento estamos nos frameworks de persistencia. Ninguém é obrigado a usar um hibernate, mas acho que continuar usando procedure você amarra demais sua aplicação ao banco.

F

Eu aconselho tu usar uma PL/TABLE ao inves de um VARRAY.

CREATE OR REAPLACE
PACKAGE BODY teste

  TYPE teste_table IS TABLE OF VARCHAR2(100);

  PROCEDURE teste_parametro(pTeste teste_table)
  IS
  BEGIN
    ...
  END;
  ....
END;

Isso é direto no banco agora se tu precisar chamar ela do Java vai ser outra história.

É isso? qql coisa manda ai.

[]'s

F

Leomc,

Concordo contigo nesse esquema de não ficar preso ao banco, mas nem sempre é assim. Existem empresas ( a que eu trabalho por exemplo ) onde tudo é feito em cima de um banco e eles querem tirar maximo proveito dos recursos.
Lembre-se tem empresas que pagam uma grana preta pra ter sistemas personalizados e utlizando os recursos disponiveis…se é o melhor metodo é outra história.

IMHO - Se o sistema for rodar “sempre” ali não vejo problemas em ficar “preso”.

[]'s

D

“fabgp2001”:

IMHO - Se o sistema for rodar “sempre” ali não vejo problemas em ficar “preso”.

[]'s

O problema que, normalmente, “para sempre” quer dizer alguns poucos anos :wink:

F

“Daniel Quirino Oliveira”:
“fabgp2001”:

IMHO - Se o sistema for rodar “sempre” ali não vejo problemas em ficar “preso”.

[]'s

O problema que, normalmente, “para sempre” quer dizer alguns poucos anos ;)

Aew Daniel,

Por isso que eu frisei no “sempre”, mas nesse caso normalmente a empresa tem tudo pendurado no banco ai vai ter que migrar tudo não só a aplicação java. Coisa que eu antes achava normal (tb comecei trabalhando so com banco, sem java), mas hoje prefiro fazer fora do DB tb.

[]'s

Criado 11 de março de 2004
Ultima resposta 11 de mar. de 2004
Respostas 7
Participantes 5