python同步两张数据表_Python 如何实现数据库表结构同步
近日,某個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 數據庫表結構同步的資料請關注云海天教程其它相關文章!
原文鏈接:https://www.cnblogs.com/Wu13241454771/p/13613658.html
總結
以上是生活随笔為你收集整理的python同步两张数据表_Python 如何实现数据库表结构同步的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 滴滴java开发面试题_Java开发经典
- 下一篇: python索引 自定义_python