每每在pycharm中工做要建立不少文件,文件一多并且若是要链接数据库的话,有不少代码都是同样的,为了避免必要的麻烦,能够新建一个模块来,将那些基本同样的代码封装到模块中,要用的时候就实例化出来,传入必要的参数就行,就不用在每一个文件中都写相同的那些代码,一来减小工做量,二来代码看起来简洁明了,让人看着舒服,容易阅读吸取。下面就讲讲链接mysql数据库时建立一个模块来帮助处理数据库中表的数据。
一、首先得引入pymysql模块
import pymysql
而后建立一个专门来放操做这个表的一个类(这里我就随便创了一个类)python
class FootUtils(object):
# 设置经常使用的默认值
def __init__(self,host="10.31.150.143",user="hz1805",password="123456",database="school"):
self.host = host
self.user = user
self.password = password
self.database = database
self.charset = "utf8"
# 链接数据库
def connetdb(self):
self.connet = pymysql.connect(host=self.host,user=self.user,password=self.password,database=self.database,charset=self.charset)
self.curcor = self.connet.cursor()
# 关闭数据库
def closedb(self):
self.curcor.close()
self.connet.close()
# 增删改查
def insertFood(self,foodname,foodprice):
self.connetdb()
try:
sqlInsert = "insert into food values(0,'"+str(foodname)+"',"+str(foodprice)+");"
self.curcor.execute(sqlInsert)
self.connet.commit()
except:
self.connet.rollback()
self.closedb()
# 删除
def delFood(self,id):
self.connetdb()
try:
# 删除sql
sqlDel="delete from food where id='"+str(id)+"'"
self.curcor.execute(sqlDel)
self.connet.commit()
except:
self.connet.rollback()
self.closedb()
二、这样就将一些链接数据库的基本操做封装在了FootUtils类中,在构造函数init中设置基本的链接参数,到时实例化直接传参就行。mysql
三、链接数据库创建一个方法connetdb(),web
self.connet = pymysql.connect(host=self.host,user=self.user,password=self.password,database=self.database,charset=self.charset)
self.curcor = self.connet.cursor()
里面的参数只要调用时传参就好了sql
四、关闭数据库(关闭链接)数据库
def closedb(self):
self.curcor.close()
self.connet.close()
在执行完表的操做后,务必调用关闭链接的操做svg
五、还能够封装一些比较经常使用的命令到模块中,这要根据具体状况来定,这时只要在封装的方法中调用链接数据库和关闭链接方法便可。值得注意的是,在不一样方法中调用其余方法或变量时,要用self.来调用,这就涉及到做用域的问题。函数
有不足之处还望大佬们批评指正。spa