gpt4 book ai didi

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

转载 作者:太空宇宙 更新时间:2023-11-03 11:08:39 25 4
gpt4 key购买 nike

最近才开始用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.

关于python - SqlAlchemy:将表导出到新数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12494611/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com