Passagem de array como parametro para procedure no Oracle 8i

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

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

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:

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.

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

[code]CREATE OR REAPLACE
PACKAGE BODY teste

TYPE teste_table IS TABLE OF VARCHAR2(100);

PROCEDURE teste_parametro(pTeste teste_table)
IS
BEGIN

END;

END;[/code]

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

É isso? qql coisa manda ai.

[]'s

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

[quote=“fabgp2001”]
IMHO - Se o sistema for rodar “sempre” ali não vejo problemas em ficar “preso”.

[]'s[/quote]

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

[quote=“Daniel Quirino Oliveira”][quote=“fabgp2001”]
IMHO - Se o sistema for rodar “sempre” ali não vejo problemas em ficar “preso”.

[]'s[/quote]

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

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