Python 如何实现数据库表结构同步


Posted in Python onSeptember 29, 2020

近日,某个QQ 群里的一个朋友提出一个问题,如何将一个DB 的表结构同步给另一个DB。
针对这个问题,我进行了思考与实践,具体的实现代码如下所示:

# coding:utf-8
import pymysql

dbDict = {"test1":"l-beta.test1"}
dbUser = "test"
dbPassword = "123456"

class DBUtils():
  def __init__(self):
    self.conn = pymysql.connect(dbDict['test1'], dbUser, dbPassword)
    self.cursor = self.conn.cursor()

  def dbSelect(self, sql):
    print("------------------------------------")
    print(sql)
    resultList = []
    self.cursor.execute(sql)
    result = self.cursor.fetchall()
    columns = self.cursor.description
    for val in result:
      tempDict = {}
      for cloNum in range(len(columns)):
        tempDict[str(columns[cloNum][0])] = val[cloNum]
      resultList.append(tempDict)
    print("---------------------打印查询结果----------------------")
    print(resultList)
    self.dbClose()
    return resultList

  def dbExcute(self, sql):
    print(sql)
    self.cursor.execute(sql)
    self.dbClose()

  def dbClose(self):
    self.conn.commit()
    self.cursor.close()
    self.conn.close()


if __name__ == "__main__":
  test = DBUtils()
  result = test.dbSelect("select table_name from information_schema.tables where table_schema='testdb1'")
  for dict1 in result:
    test = DBUtils()
    create_table_sql = "create table testdb.%s as select * from testdb1.%s" % (dict1['table_name'],dict1['table_name'])
    print(create_table_sql)
    test.dbExcute(create_table_sql)

示例代码操作简单,通俗易懂,所以没有过多的注释,如有疑问的小伙伴们,可在文章下方评论。

以上就是Python 如何实现数据库表结构同步的详细内容,更多关于Python 数据库表结构同步的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
numpy.random.seed()的使用实例解析
Feb 03 Python
浅析Python3爬虫登录模拟
Feb 07 Python
python使用epoll实现服务端的方法
Oct 16 Python
Django自定义用户登录认证示例代码
Jun 30 Python
利用 Flask 动态展示 Pyecharts 图表数据方法小结
Sep 04 Python
pytorch AvgPool2d函数使用详解
Jan 03 Python
Python图像处理库PIL的ImageDraw模块介绍详解
Feb 26 Python
如何在Python 游戏中模拟引力
Mar 27 Python
详解python百行有效代码实现汉诺塔小游戏(简约版)
Oct 30 Python
OpenCV+Python3.5 简易手势识别的实现
Dec 21 Python
python利用appium实现手机APP自动化的示例
Jan 26 Python
python 学习GCN图卷积神经网络
May 11 Python
scrapy-redis分布式爬虫的搭建过程(理论篇)
Sep 29 #Python
python ssh 执行shell命令的示例
Sep 29 #Python
Scrapy基于scrapy_redis实现分布式爬虫部署的示例
Sep 29 #Python
浅析python 字典嵌套
Sep 29 #Python
详解基于Scrapy的IP代理池搭建
Sep 29 #Python
Python 创建守护进程的示例
Sep 29 #Python
Python 解析xml文件的示例
Sep 29 #Python
You might like
PHP实现根据设备类型自动跳转相应页面的方法
2014/07/24 PHP
php opendir()列出目录下所有文件的实例代码
2016/10/02 PHP
javascript中xml操作实现代码
2011/11/21 Javascript
单击复制文字兼容各浏览器的完美解决方案
2013/07/04 Javascript
javascript if条件判断方法小结
2014/05/17 Javascript
JS实现让访问者自助选择网页文字颜色的方法
2015/02/24 Javascript
jQuery实现时尚漂亮的弹出式对话框实例
2015/08/07 Javascript
Jquery全屏相册插件zoomvisualizer具有调节放大与缩小功能
2015/11/02 Javascript
nodeJs内存泄漏问题详解
2016/09/05 NodeJs
Bootstrap table表格简单操作
2017/02/07 Javascript
bootstrap3-dialog-master模态框使用详解
2017/08/22 Javascript
JS实现网页抢购功能(触发,终止脚本)
2017/11/27 Javascript
ES6 迭代器(Iterator)和 for.of循环使用方法学习(总结)
2018/02/08 Javascript
vue+jquery+lodash实现滑动时顶部悬浮固定效果
2018/04/28 jQuery
使用preload预加载页面资源时注意事项
2020/02/03 Javascript
使用Protocol Buffers的C语言拓展提速Python程序的示例
2015/04/16 Python
在Django中创建第一个静态视图
2015/07/15 Python
Python实例一个类背后发生了什么
2016/02/09 Python
mysql 之通过配置文件链接数据库
2017/08/12 Python
Tensorflow的可视化工具Tensorboard的初步使用详解
2018/02/11 Python
浅谈Python中的作用域规则和闭包
2018/03/20 Python
详解如何将python3.6软件的py文件打包成exe程序
2018/10/09 Python
Python闭包和装饰器用法实例详解
2019/05/22 Python
简单了解Python write writelines区别
2020/02/27 Python
利用matplotlib为图片上添加触发事件进行交互
2020/04/23 Python
python获得命令行输入的参数的两种方式
2020/11/02 Python
MADE荷兰:提供原创设计师家具
2018/04/03 全球购物
Bibloo奥地利:购买女装、男装、童装、鞋和配件
2018/10/18 全球购物
毕业生就业自荐书
2013/12/15 职场文书
致接力运动员广播稿
2014/02/17 职场文书
法院四风对照检查材料思想汇报
2014/10/06 职场文书
家长高考寄语
2015/02/27 职场文书
安全守法证明
2015/06/23 职场文书
新学期小学班主任工作计划
2019/06/21 职场文书
nginx location优先级的深入讲解
2021/03/31 Servers
golang三种设计模式之简单工厂、方法工厂和抽象工厂
2022/04/10 Golang