用python编写与mysql数据库连接并实现断线重连的问题

用python编写与mysql数据库连接并实现断线重连的问题,第1张

conn本来 就已经被你定义成了 函数, conn.ping()当然不存在了。而且你要的数据库连接c,还被手动关闭了。我觉得有两点

1. 按照你这个脚本的情况,你用一次,就新建一个数据库连接问题应该不大。

2. 要保持使用一个连接的话。把c作全局变量 c=MySQLdb.connect(user="root",passwd="12345",host="localhost",db="yingtest")

使用的时候,直接用c但是不要close,当然要先判断这个连接是否已经断开了,如是再重新连一次。

或者把连接放到一个连接池里面,用的时候直接去连接池里面取。连接池可以看看 DBUtils模块

你说的conn.ping() 看看是不是在c里面,c=MySQLdb.connect(user="root",passwd="12345",host="localhost",db="yingtest")就是这个对象里面,看看有没有判断连接是否断开的方法。 因为没用过 MySQLdb模块。

你可以访问Python数据库接口及API查看详细的支持数据库列表。不同的数据库你需要下载不同的DB API模块,例如你需要访问Oracle数据库和Mysql数据,你需要下载Oracle和MySQL数据库模块。

DB-API 是一个规范. 它定义了一系列必须的对象和数据库存取方式, 以便为各种各样的底层数据库系统和多种多样的数据库接口程序提供一致的访问接口 。

Python的DB-API,为大多数的数据库实现了接口,使用它连接各数据库后,就可以用相同的方式 *** 作各数据库。

Python DB-API使用流程:

引入 API 模块。

获取与数据库的连接。

执行SQL语句和存储过程。

关闭数据库连接。

什么是MySQLdb?

MySQLdb 是用于Python链接Mysql数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API 上建立的。

如何安装MySQLdb?

为了用DB-API编写MySQL脚本,必须确保已经安装了MySQL。复制以下代码,并执行:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

import MySQLdb

如果执行后的输出结果如下所示,意味着你没有安装 MySQLdb 模块:

Traceback (most recent call last):

File "test.py", line 3, in <module>

import MySQLdb

ImportError: No module named MySQLdb


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/10049502.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存