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 相关文章推荐
Python __setattr__、 __getattr__、 __delattr__、__call__用法示例
Mar 06 Python
Python字符串和文件操作常用函数分析
Apr 08 Python
Python中列表、字典、元组数据结构的简单学习笔记
Mar 20 Python
浅析Python中return和finally共同挖的坑
Aug 18 Python
pandas创建新Dataframe并添加多行的实例
Apr 08 Python
python list元素为tuple时的排序方法
Apr 18 Python
Django后端接收嵌套Json数据及解析详解
Jul 17 Python
详解Python在使用JSON时需要注意的编码问题
Dec 06 Python
Windows下实现将Pascal VOC转化为TFRecords
Feb 17 Python
Python网络爬虫信息提取mooc代码实例
Mar 06 Python
Python Socket TCP双端聊天功能实现过程详解
Jun 15 Python
python自动获取微信公众号最新文章的实现代码
Jul 15 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连mysql和oracle数据库性能比较
2006/10/09 PHP
php实现html标签闭合检测与修复方法
2015/07/09 PHP
Zend Framework教程之Application和Bootstrap用法详解
2016/03/10 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
2017/04/19 PHP
PHP的微信支付接口使用方法讲解
2019/03/08 PHP
利用PHP计算有多少小于当前数字的数字方法示例
2020/08/26 PHP
javascript获取当前ip的代码
2009/05/10 Javascript
锋利的jQuery jQuery中的DOM操作
2010/03/21 Javascript
Jquery实现图片预加载与延时加载的方法
2014/12/22 Javascript
JavaScript使用concat连接数组的方法
2015/04/06 Javascript
JavaScript实现标题栏文字轮播效果代码
2015/10/24 Javascript
浅谈js的html元素的父节点,子节点
2016/08/06 Javascript
bing Map 在vue项目中的使用详解
2018/04/09 Javascript
Node.js + express实现上传大文件的方法分析【图片、文本文件】
2019/03/14 Javascript
javascript移动端 电子书 翻页效果实现代码
2019/09/07 Javascript
关于vue里页面的缓存详解
2019/11/04 Javascript
[01:08:56]DOTA2-DPC中国联赛 正赛 Magma vs LBZS BO3 第一场 2月7日
2021/03/11 DOTA
python实现定时发送qq消息
2019/01/18 Python
复古斯堪的纳维亚儿童服装:Baby go Retro
2017/09/09 全球购物
几个常见的软件测试问题
2016/09/07 面试题
团员学习总结的自我评价范文
2013/10/14 职场文书
保洁主管岗位职责
2013/11/20 职场文书
初三学习计划书范文
2014/04/30 职场文书
会计求职自荐信
2014/06/20 职场文书
民主生活会对照检查材料范文
2014/10/01 职场文书
2014村书记党建工作汇报材料
2014/11/02 职场文书
2014年机关后勤工作总结
2014/12/16 职场文书
领导欢送会主持词
2015/07/06 职场文书
初三化学教学反思
2016/02/22 职场文书
辞职申请书范本
2019/05/20 职场文书
元素水平垂直居中的方式
2021/03/31 HTML / CSS
Python实现生成bmp图像的方法
2021/06/13 Python
springBoot基于webSocket实现扫码登录
2021/06/22 Java/Android
Python中三种花式打印的示例详解
2022/03/19 Python
Python接口自动化之文件上传/下载接口详解
2022/04/05 Python
德劲DE1105机评
2022/04/05 无线电