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学习笔记_数据排序方法
May 22 Python
Python性能优化技巧
Mar 09 Python
Python的Bottle框架中实现最基本的get和post的方法的教程
Apr 30 Python
Python遍历文件夹和读写文件的实现代码
Aug 28 Python
Python中支持向量机SVM的使用方法详解
Dec 26 Python
Python内存读写操作示例
Jul 18 Python
Python实现多进程的四种方式
Feb 22 Python
python实现从wind导入数据
Dec 03 Python
pytorch程序异常后删除占用的显存操作
Jan 13 Python
Python Selenium安装及环境配置的实现
Mar 17 Python
Python绘制词云图之可视化神器pyecharts的方法
Feb 23 Python
教你怎么用Python操作MySql数据库
May 31 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实现无限级分类 | 树型显示分类关系
2006/11/19 PHP
php str_pad 函数用法简介
2009/07/11 PHP
php四种基础算法代码实例
2013/10/29 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(八)
2014/06/23 PHP
PHP将HTML转换成文本的实现代码
2015/01/21 PHP
PHP四种基本排序算法示例
2015/04/09 PHP
php动态添加url查询参数的方法
2015/04/14 PHP
PHPCMS2008广告模板SQL注入漏洞修复
2016/10/11 PHP
详解PHP用substr函数截取字符串中的某部分
2016/12/03 PHP
Laravel中encrypt和decrypt的实现方法
2017/09/24 PHP
js 判断浏览器类型 去全角、半角空格 自动关闭当前窗口
2009/04/10 Javascript
基于jQuery的ajax功能实现web service的json转化
2009/08/29 Javascript
两个数组去重的JS代码
2013/12/04 Javascript
分享一则JavaScript滚动条插件源码
2015/03/03 Javascript
分享10个原生JavaScript技巧
2015/04/20 Javascript
AngularJS 最常用的功能汇总
2016/02/17 Javascript
jQuery动态改变多行文本框高度的方法
2016/09/07 Javascript
Bootstrap基本样式学习笔记之表格(2)
2016/12/07 Javascript
canvas实现刮刮卡效果
2017/03/14 Javascript
vue.js异步上传文件前后端实现代码
2017/08/22 Javascript
vue和webpack安装命令详解
2018/06/15 Javascript
详解Angular6 热加载配置方案
2018/08/18 Javascript
详解用场景去理解函数柯里化(入门篇)
2019/04/11 Javascript
JS实现可视化音频效果的实例代码
2020/01/16 Javascript
Python实现多条件筛选目标数据功能【测试可用】
2018/06/13 Python
PyCharm使用Docker镜像搭建Python开发环境
2019/12/26 Python
python中如何使用虚拟环境
2020/10/14 Python
马来西亚最大的电器网站:Senheng
2017/10/13 全球购物
eDreams葡萄牙:全球最大的在线旅行社之一
2019/04/15 全球购物
给领导的致歉信范文
2014/01/13 职场文书
致200米运动员广播稿
2014/02/06 职场文书
调解员先进事迹材料
2014/02/07 职场文书
广播体操比赛口号
2014/06/10 职场文书
付款承诺函范文
2015/01/21 职场文书
Python FuzzyWuzzy实现模糊匹配
2022/04/28 Python
Mysql 一主多从的部署
2022/05/20 MySQL