getattr en db.cursor ??
Diego Chaparro
dchapar.madrid en sinvest.es
Mar Mayo 6 15:35:04 CEST 2003
borillo en aditel.org wrote:
> Estás intentado acceder a un propiedad de un objeto en Python, cuando lo
> que quieres (creo yo :) es hacer una consulta al diccionario de datos de
> Oracle, no ??
>
> Si explicas un poco más tu problema y qué pretendes conseguir, te echo una
> mano encantado.
En realidad lo que quiero hacer es ejecutar un procedimiento de la base
de datos, y creo que eso ya lo he solucionado con lo siguiente:
db = DCOracle2.connect (user, passwd, database)
procedure = getattr (db.procedures, nombre_procedimiento)
procedure (parametros)
Eso creo que ya funciona, pero ahora lo que me gustaría saber es si hay
alguna forma de capturar la salida estándar de ese procedimiento. ¿Es
posible?
Gracias,
>> Estoy intentando usar getattr para sacar el nombre de procedimientos
>>definidos en una base de datos, pero no soy capaz, aunque la verdad es
>>que no tengo los conceptos muy claros y no sé si será posible lo que
>>estoy haciendo. Tengo:
>>
>> db = DCOracle2.connect (user, passwd, database)
>> c = db.cursor()
>> x = getattr (c, nombre_procedimiento)
>>
>>Y obtengo lo siguiente:
>>
>> Traceback (most recent call last):
>>
>> File "Prueba.py", line 32, in Execute
>> x = getattr (c, nombre_procedimiento)
>> File "DCOracle2.py", line 406, in __getattr__
>> AttributeError: procedimiento1
>>
>>¿Me he explicado? ¿Se puede hacer lo que quiero? ¿Estoy haciendo alguna
>>barbaridad?
Más información sobre la lista de distribución Python-es