2012-02-10 17 views
6

Ben sqlalchemy çekirdeği kullanan bir komut dosyası var, ama ne yazık ki bunun yerine ham sql kullanmak için yeniden yazmak gerekir. Benim sqla insert/etc… ifadelerini açık bir motor olmadan belirli bir lehçe (oracle burada) içine çevirmek mümkün mü?Bir bağlantı olmadan sqlalchemy çekirdek deyimlerini ham SQL'e dönüştürün?

Temel olarak, str (some_sqla_core_expression) için varsayılan olmayan bir motor kullanabilmek mümkün mü?

from sqlalchemy.sql import column, table, select 
from sqlalchemy.dialects import oracle 

dialect = oracle.dialect() 
table = table('sometable', column('id'), column('data')) 
stmt = select([table]).where(table.c.id==5).where(table.c.data=='foo') 
raw_sql = unicode(stmt.compile(dialect=dialect)) 
print raw_sql 

aslında burada şu anda SQL eğitimde bunun bir örneğidir var:

cevap