写点什么

python 实现连接两个数据库

作者:YUKI0506
  • 2022 年 5 月 18 日
  • 本文字数:519 字

    阅读完需:约 2 分钟

在开发工具的时候发现查询、修改数据有时候是涉及到多个分库,

本篇的内容是:python 是如何可以连接多个数据库的,其次是记录一下操作数据库出现的问题。

//连接db1 = MySQLdb.connect(host=dbhost, user=dbuser, passwd=dbpass, db=dbname1, port=dbport)db2  =  MySQLdb.connect(host=dbhost, user=dbuser, passwd=dbpass, db=dbname2, port=dbport)//获取cursor对象cursor = db1.cursor()cursor_build = db2.cursor()//操作数据库cursor.execute(sql1)cursor_build.execute(sql2)//结果db1操作成功,db2操作无响应
复制代码

此时运行代码是没报错的,输入要查询的 id(数据在库 1),输出的结果不为空,但查询的 id 数据在库 2 时,输出的结果为空,可见并没有执行 sql2,出现这个问题的原因是什么呢?

原因是 MySQLdb 在连接后关闭了自动提交,所以我们在连接数据库后后要新增 autocommit 属性,设置自动提交

db1 = MySQLdb.connect(host=dbhost, user=dbuser, passwd=dbpass, db=dbname1, port=dbport)db2 = MySQLdb.connect(host=dbhost, user=dbuser, passwd=dbpass, db=dbname2, port=dbport)db1.autocommit(1)db2.autocommit(1)
复制代码

新增 autocommit 后,运行代码,查询的 id 数据无论是在库 1 还是库 2,输出的结果都不为空啦

用户头像

YUKI0506

关注

还未添加个人签名 2021.01.20 加入

还未添加个人简介

评论

发布
暂无评论
python实现连接两个数据库_YUKI0506_InfoQ写作社区