#/usr/bin/python
#coding:utf-8
import MySQLdb
import sys
import re
reload(sys)
sys.setdefaultencoding('utf-8')
class db:
db = None
def __init__(self,conf):
if self.db == None:
# host user password dbname port
self.db = MySQLdb.connect(conf[0],conf[1],conf[2],conf[3],conf[4])
def close(self):
self.db.close()
self.db = None
#运行sql 返回全部结果集
def get_all(self,sql):
if self.db == None:
raise RuntimeError("数据库连接没有打开")
cur = self.db.cursor()
cur.execute(sql)
result = cur.fetchall()
return result
#运行sql 返回一行结果
def get_one(self,sql):
cur = self.db.cursor()
cur.execute(sql)
result = cur.fetchone()
return result
def __exit__():
close()
调用demo
#!/usr/bin/python
#coding:utf-8
import MySQLdb
import sys
import re
from db import *
reload(sys)
sys.setdefaultencoding('utf-8')
#数据库连接配置
DB = db(['192.168.10.200','user','123456','dbname',3306])
tables = DB.get_all('show tables')
if tables != None:
for table in tables:
#print(table[0])
rs_count = DB.get_one("select count(*) from "+table[0])[0]
print(rs_count)
DB.close()
基本思路如此,达到一定的封装效果。
标签: none
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://www.isres.com/python/128.html