合并来自两个不同数据库的表 - sqlite3/Python

Merge tables from two different databases - sqlite3/Python(合并来自两个不同数据库的表 - sqlite3/Python)
本文介绍了合并来自两个不同数据库的表 - sqlite3/Python的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两个不同的 SQLite 数据库 XXX 和 YYY.XXX 包含表 A 和 YYY 分别包含表 B.A 和 B 具有相同的结构(列).如何在 Python - SQLite API 中附加 A 中的 B 行.追加 A 后包含 A 行和 B 行.

I have two different SQLite databases XXX and YYY. XXX contains table A and YYY contains B respectively. A and B have same structure(columns). How to append the rows of B in A in Python - SQLite API. After appending A contains rows of A and rows of B.

推荐答案

您首先使用 sqlite3.connect 获得到数据库的连接,然后创建一个游标,以便您可以执行 sql.有了游标,就可以执行任意的sql命令了.

You first get a connection to the database using sqlite3.connect, then create a cursor so you can execute sql. Once you have a cursor, you can execute arbitrary sql commands.

示例:

import sqlite3

# Get connections to the databases
db_a = sqlite3.connect('database_a.db')
db_b = sqlite3.connect('database_b.db')

# Get the contents of a table
b_cursor = db_b.cursor()
b_cursor.execute('SELECT * FROM mytable')
output = b_cursor.fetchall()   # Returns the results as a list.

# Insert those contents into another table.
a_cursor = db_a.cursor()
for row in output:
    a_cursor.execute('INSERT INTO myothertable VALUES (?, ?, ...etc..., ?, ?)', row)

# Cleanup
db_a.commit()
a_cursor.close()
b_cursor.close()

警告:我还没有真正测试过这个,所以它可能有一些错误,但我认为基本的想法是合理的.

Caveat: I haven't actually tested this, so it might have a few bugs in it, but the basic idea is sound, I think.

这篇关于合并来自两个不同数据库的表 - sqlite3/Python的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Flask + PyMySQL giving error no attribute #39;settimeout#39;(FlASK+PyMySQL给出错误,没有属性#39;setTimeout#39;)
FastAPI + Tortoise ORM + FastAPI Users (Python) - Relationship - Many To Many(FastAPI+Tortoise ORM+FastAPI用户(Python)-关系-多对多)
Inserting NaN value into MySQL Database(将NaN值插入MySQL数据库)
Window functions not working in pd.read_sql; Its shows error(窗口函数在pd.read_sql中不起作用;它显示错误)
(Closed) Leaflet.js: How I can Do Editing Geometry On Specific Object I Select Only?((已关闭)Leaflet.js:如何仅在我选择的特定对象上编辑几何图形?)
in sqlite update trigger with multiple if/Case Conditions(在具有多个IF/CASE条件的SQLite UPDATE触发器中)