pymysql 含义:是一个使Python连接到MySQL的库 使用: #导包 import pymysql # username : adil # password : helloyyj class DataBaseHandle(object): ‘‘‘ 定义一个 MySQL 操作类‘‘‘ def __init__(self, host, username, password, database, port): ‘‘‘初始化数据库信息并创建数据库连接‘‘‘ # 下面的赋值其实可以省略,connect 时 直接使用形参即可 self.host = host self.username = username self.password = password self.database = database self.port = port self.db = pymysql.connect( host=self.host, user=self.username, password=self.password, db=self.database, port=self.port, charset="utf8" ) self.cursor = self.db.cursor(pymysql.cursors.DictCursor) def insertDB(self, sql): ‘‘‘ 插入数据库操作 ‘‘‘ try: # 执行sql self.cursor.execute(sql) # tt = self.cursor.execute(sql) # 返回 插入数据 条数 可以根据 返回值 判定处理结果 # print(tt) self.db.commit() # query = ‘insert into 表名(列名1, 列名2, 列名3, 列名4, 列名5, 列名6) values(%s, %s, %s, %s, %s, %s)‘ # self.cursor.execute(sql) except: # 发生错误时回滚 self.db.rollback() finally: self.cursor.close() def deleteDB(self, sql): ‘‘‘ 操作数据库数据删除 ‘‘‘ try: # 执行sql self.cursor.execute(sql) # tt = self.cursor.execute(sql) # 返回 删除数据 条数 可以根据 返回值 判定处理结果 # print(tt) self.db.commit() except: # 发生错误时回滚 self.db.rollback() finally: self.cursor.close() def updateDb(self, sql): ‘‘‘ 更新数据库操作 ‘‘‘ try: # 执行sql self.cursor.execute(sql) # tt = self.cursor.execute(sql) # 返回 更新数据 条数 可以根据 返回值 判定处理结果 # print(tt) self.db.commit() except: # 发生错误时回滚 self.db.rollback() finally: self.cursor.close() def selectDb(self, sql): ‘‘‘ 数据库查询 ‘‘‘ try: self.cursor.execute(sql) # 返回 查询数据 条数 可以根据 返回值 判定处理结果 data = self.cursor.fetchall() # 返回所有记录列表 print(data) # 结果遍历 for row in data: name = row["name"] age = row["age"] # 遍历打印结果 print(‘age = %s, name = %s‘ % (age, name)) except: print(‘Error: unable to fecth data‘) finally: self.cursor.close() def closeDb(self): ‘‘‘ 数据库连接关闭 ‘‘‘ self.db.close() if __name__ == ‘__main__‘: DbHandle = DataBaseHandle(‘端口号(localhost)‘, ‘数据库用户名‘, ‘密码‘, ‘数据库名‘,‘端口号‘)# DbHandle.insertDB("insert into students (name,age,gender) values (‘随便起名‘,19,‘男‘)") # DbHandle.deleteDB("delete from students where name=‘随便起名‘") # DbHandle.selectDb("select * from kk where age > 80") # DbHandle.updateDb("update kk set name=‘kdsk‘ where id=2") DbHandle.closeDb() 在另外文件中调用 from 文件名 import DataBasehandle db=DataBaseHandle(‘端口号‘,‘用户名‘,‘密码‘,‘数据库‘,‘端口号‘) db.insertDB(‘sql语句‘) db.closeDB()