微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python – SqlAlchemy:将表导出到新数据库

最近才开始使用python,我喜欢它!但是,我坚持使用SqlAlchemy.

我正在尝试编写一个脚本来读取MS SQL数据库,查询表(所有字段,只对某些字段进行过滤),并将结果写入本地SQLite数据库.

(目标是编写数据适配器:在将结果导出到另一个数据库之前,在SQLite数据库上执行一些查询.也可以写入目标数据库中的临时表.)

我可以建立连接并获得查询结果 – 我可以打印它们,所以我知道该部分有效.但是,如何根据源SQL Server的查询结果结构创建新表?

这有效:

import sqlalchemy

esd = sqlalchemy.create_engine( 'mssql+pyodbc://username:passwordSservername/dbname' )
for row in esd.execute( 'select * from ticket_actions where log_dt > \'2012-09-01\''):
    print( row.eFolderID )

这也有效:

import pyodbc
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=servername;DATABASE=dbname;UID=username;PWD=password')
cursor = cnxn.cursor()
for row in cursor.execute( 'select * from ticket_actions where log_dt > \'2012-09-01\''):
    print( row.eFolderID )

有关如何创建与查询结构相同的新表的任何想法?

谢谢!

解决方法:

Creating and Dropping Database Tables

Creating … individual tables can be done via the create() … method of Table.

有关阅读源结构的信息,请参阅Reflecting Database Objects

A Table object can be instructed to load information about itself from the corresponding database schema object already existing within the database.
[…]
The reflection system can also reflect views.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐