import pymysql from Cfg.Handle_ini import cfg #ini的配置文件调用 调用方式cfg.get(‘’,‘’) class HeandleMysql(object): # 建立连接 def __init__(self): self.conn = pymysql.connect( host=cfg.get('mysql','host'), port=cfg.getint('mysql','port'), user=cfg.get('mysql','user'), password=cfg.get('mysql','password'), database=cfg.get('mysql','database'), charset='utf8', cursorclass=pymysql.cursors.DictCursor ) # 创建游标 self.cur = self.conn.cursor() #查询一行 def select_one_row(self,sql): self.conn.commit() self.cur.execute(sql) return self.cur.fetchone() #查询所有行 def select_all_row(self,sql): self.conn.commit() self.cur.execute(sql) return self.cur.fetchall() #按给定的值取行数 def select_assign_row(self,sql,assign_row): self.conn.commit() self.cur.execute(sql) return self.cur.fetchmany(assign_row) #输出sql语句查询后内容行数 def get_count(self,sql): self.conn.commit() return self.cur.execute(sql) #更新 def update_data(self,sql): self.cur.execute(sql) self.conn.commit() #关闭 def closs(self): self.cur.close() self.conn.close() #调用时调用的变量 DB = HeandleMysql() #测试 if __name__ == '__main__': sql = 'select * from member LIMIT 10' db = HeandleMysql() count = db.get_count(sql) print('输出结果个数',count) one = db.select_one_row(sql) print('输出一行结果',one) all = db.select_all_row(sql) print('输出所有结果',all) assign = db.select_assign_row(sql,5) print('输出指定行数',assign) db.closs() #-----------------------学习时使用的,对整体无用----------------------------- #数据库操作步骤 # 1.连接数据库,创建游标 # 2.执行sql语句 # 3.获取执行的结果 # 4.关闭数据库连接 #、建立连接 # conn = pymysql.connect( # host='api.lemonban.com', # port=3306, #不加引号 # user='future', # password='123456', # database='futureloan', # charset='utf8', # cursorclass=pymysql.cursors.DictCursor #把元组改到字典格式 # ) # # 创建游标 # cur = conn.cursor() # # #执行sql语句 # sql = 'select * from futureloan.`member` limit 10;' # cur.execute(sql) #返回的是sql语句执行的行数 # # #获取sql语句执行的结果 # one = cur.fetchone() #一行一行的取值 第一行 # two = cur.fetchone() #一行一行的取值 第二行 # #获取所有的 # all = cur.fetchall() #去所有行 # #按指定个数取值 # many = cur.fetchmany(5) #按给定的值取行数 # # #关闭游标关闭数据库连接释放资源 # cur.close() # conn.close()