python-3.x - 如何使用 python 将 postgresql 表迁移/复制到 oracle?
问题描述
我正在使用 DataFrame 从每个 postgres 表中读取数据,并使用 to_sql() 方法将数据插入到 oracle 中。我面临的问题是它在将一些记录复制到 oracle 后卡住了。Jupyter Notebook 很忙,但什么也没做。
def duplicateData(conn, conn2, session):
query1 = "SELECT table_name FROM information_schema.tables WHERE table_schema = 'public'"
all_tables = session.execute(query1)
count = 0
for index,tables in enumerate(all_tables):
count += 1
# getting rid of comma and parathesis
for i, table in enumerate(tables):
print("\n"+table+" - NO: "+str(count)+"\n")
query2 = "SELECT column_name FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '" + table + "'"
columns = session.execute(query2)
cols = []
for col in columns:
cols.append(col[0])
query3 = "SELECT * FROM " + table
df = pd.read_sql(query3, conn)
alias = (table[:30] + '') if len(table) > 30 else table
df.to_sql(alias, conn2, index=False, schema="PMS")
print("\nDONE\n")
解决方案
推荐阅读
- checkbox - expandblelist 子视图中的复选框
- python - 如何在 django 中显示外键值而不是 pk?
- laravel - How can I send multiple parameters in return response json in Laravel?
- python - Django 的 AppConfig.ready() 似乎在 Apache wsgi 中每个线程调用一次
- pip - How to require packages from multiple indexes in setup.py?
- flutter - 如何判断导航器推送是否完成?
- pyspark - pyspark UDF 中的窗口函数
- java - jdk 8运行空主函数,为什么PSYoungGen已经使用了大约1000k空间
- javascript - 捆绑 JavaScript 时出现意外令牌 else 异常
- php - 通过 LDAP 对 MySQL 进行本地 Active Director 身份验证