0

我正在尝试使用 python 脚本将我的数据库从 ms sql server 迁移到 PostgreSQL。在迁移数据之前,脚本需要创建所需的表。

我打算使用 sqlalchemy 创建所需的表,然后迁移实际数据。下面是示例代码。在 pgsql 中创建表时,脚本失败,因为 pgsql 中没有像 tinyint 这样的数据类型。我虽然 sqlalchemy 抽象了这些数据类型。

对于这种用例的任何建议和最佳实践都会有很大帮助

from sqlalchemy import create_engine, MetaData, select, func, Table
import pandas as pd
engine_pg = create_engine('postgresql://XXXX:YYYY$@10.10.1.4:5432/pgschema')
engine_ms = create_engine('mssql+pyodbc://XX:YY@10.10.1.5/msqlschema?driver=SQL+Server')
ms_metadata = MetaData(bind=engine_ms)
pg_metadata = MetaData(bind=engine_pg)

#extract Node table object from mssql using ms_metadat and engine_ms
Node = Table('Node', ms_metadata, autoload_with=engine_ms)

#create Node table in pgsql using the Node table object
Node.create(bind=engine_pg)
4

0 回答 0