我是sqlalchemy的新手。我正在尝试使用sqlalchemy core
生成查询from sqlalchemy.dialects import oracle, mssql
from sqlalchemy.sql import column, table, select, literal_column
def genrate_query(db_type):
cols = [literal_column('foo'), literal_column('bar')]
qry = select([cols]).select_from(table('some_table'))
if db_type == 'mssql':
return qry.compile(dialect=mssql.dialect(), compile_kwargs={"literal_binds": True})
return qry.compile(dialect=oracle.dialect(), compile_kwargs={"literal_binds": True})
这给了我:
SELECT foo, bar FROM some_table
我正在努力实现
SELECT foo, bar FROM some_table@dblink
表示oracle。
尝试为oracle生成@dblink
的方言特定查询,为mssql生成host.dbname.schema.some_table
,任何想法如何实现它?