El jue, 18-03-2010 a las 04:06 +0100, Chema Cortes escribió:
> On 17/03/10 23:21, Jose Caballero wrote:
> > En mi caso concreto son bases de datos Oracle. Las tablas ya estan
> > creadas, y los esquemas son fijos. Lo que necesito es hacer muchas
> > consultas solo-lectura a esas DB, procesar el resultado (hacer
> > graficos y esas cosas) y, de vez en cuando, modificar el contenido de
> > una de las tablas. El tamagno de las tablas a leer es del orden de 10
> > millones de entradas por tabla.
> 
> Una diferencia fundamental entre django ORM y Alchemy cuando usas bases
> de datos ya creadas (databases "legacy") es que la introspección de
> django se limita a crear un modelo nuevo a partir del que tienes, pero
> no siempre es posible usar la tablas originales sin modificación. Por
> contra, Alchemy ofrece muchas más posibilidades de mapear cualquier
> tabla, vista o query a una clase, sin alteración del modelo original.
> 
> Yo tuve un problema similar, donde django no funcionaba a no ser que
> modificara mis tablas originales de oracle. Por simpleza, terminé
> construyendo un nuevo modelo de datos ajustado a las necesidades de
> django donde pasaba puntualmente los datos que necesitaba en cada
> momento. En tu caso no parece que sea lo recomendable, por lo que o bien
> utiliza alchemy o bien extrae los datos sin pasar por un ORM (que no es
> obligado).

Además sqlalchemy tiene una cosa muy chula que es el sqlsoup [1] con el
que puedes acceder a las tablas como si hubieras creado los modelos pero
sin tener que hacerlo. Osea, si ya tienes la base de datos creada,
utilizas sqlsoup y no tendrás que declarar las clases con todas las
columnas y sus tipos. En mi blog tengo un ejemplo [2]

[1] http://www.sqlalchemy.org/trac/wiki/SqlSoup
[2] http://danigm.net/node/92

Attachment: signature.asc
Description: Esto es una parte de mensaje firmado digitalmente

_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a