安装PyMySQL库
pip3 install PyMySQLpymysql.cursorsde参数的可选值如下:
类型描述Cursor普通的游标对象,默认创建的游标对象SSCursor不缓存游标,主要用于当操作需要返回大量数据的时候DictCursor以字典的形式返回操作结果SSDictCursor不缓存游标,将结果以字典的形式进行返回在默认情况下cursor方法返回的是BaseCursor类型对象,BaseCursor类型对象在执行查询后每条记录的结果以列表(list)表示。 如果要返回字典(dict)表示的记录,就要设置cursor参数为pymysql.cursors.DictCursor类。 cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
# connect_db.py:公共模块,用于连接数据库,并操作数据库
# connect_db:连接数据库,并操作数据库 import pymysql class OperationMysql: """ 数据库SQL相关操作 import pymysql # 打开数据库连接 db = pymysql.connect("localhost","testuser","test123","TESTDB" ) # 使用 cursor() 方法创建一个游标对象 cursor cursor = db.cursor() # 使用 execute() 方法执行 SQL 查询 cursor.execute("SELECT VERSION()") """ def __init__(self): # 创建一个连接数据库的对象 self.conn = pymysql.connect( host='127.0.0.1', # 连接的数据库服务器主机名 port=3306, # 数据库端口号 user='test', # 数据库登录用户名 passwd='111111', db='test', # 数据库名称 charset='utf8', # 连接编码 cursorclass=pymysql.cursors.DictCursor ) # 使用cursor()方法创建一个游标对象,用于操作数据库 self.cur = self.conn.cursor() # 查询一条数据 def search_one(self, sql): self.cur.execute(sql) result = self.cur.fetchone() # 使用 fetchone()方法获取单条数据.只显示一行结果 # result = self.cur.fetchall() # 显示所有结果 return result # 更新SQL def updata_one(self, sql): try: self.cur.execute(sql) # 执行sql self.conn.commit() # 增删改操作完数据库后,需要执行提交操作 except: # 发生错误时回滚 self.conn.rollback() self.conn.close() # 记得关闭数据库连接 # 插入SQL def insert_one(self, sql): try: self.cur.execute(sql) # 执行sql self.conn.commit() # 增删改操作完数据库后,需要执行提交操作 except: # 发生错误时回滚 self.conn.rollback() self.conn.close() # 删除sql def delete_one(self, sql): try: self.cur.execute(sql) # 执行sql self.conn.commit() # 增删改操作完数据库后,需要执行提交操作 except: # 发生错误时回滚 self.conn.rollback() self.conn.close() if __name__ == '__main__': op_mysql = OperationMysql() res = op_mysql.search_one("SELECT * from odi_order WHERE order_no='12222'") print(res)