6-2 python 操作数据库mysql
1、python操作MySQL的 查询(select操作) 步骤
import pymysql # 1、建立数据库连接 conn = pymysql.connect(host='118.24.3.40',user='jxz', password='123456',port=3306, db='jxz',charset='utf8',autocommit=True) # 2、建立游标并指定返回的类型为字典 # pymysql.cursors.DictCursor 返回一个字典 cur = conn.cursor(pymysql.cursors.DictCursor) # 3、编写sql语句 sql1 ='select * from app_myuser;' # 4、执行sql语句 cur.execute(sql1) # 只是执行sql1,并不会返回数据 # 5、获取返回的数据 print(cur.fetchall()) #获取到所有返回的数据 # 6、关闭游标 cur.close() # 7、关闭数据库连接 conn.close()
2、python操作MySQL的 插入(增、删、改操作) 步骤
import pymysql # 1、建立数据库连接 并指定autocommit=True,修改数据操作后直接提交 conn = pymysql.connect(host='118.24.3.40',user='jxz', password='123456',port=3306, db='jxz',charset='utf8',autocommit=True) # 2、建立游标,并指定游标返回的是字典格式 cur = conn.cursor(pymysql.cursors.DictCursor) # 3、编写插入sql语句 sql2 ='insert into app_myuser (username,passwd,is_admin) values ("hsy123","456789",1);' # 4、执行sql语句 cur.execute(sql2)#只是执行sql,并不会返回数据 # 5、将插入的数据保存到数据库,也可以在连接中指定自动提交 # conn.commit() # 6、查询插入的数据 sql3 = 'select * from app_myuser where username = "hsy123"' cur.execute(sql3) res = cur.fetchone() # 查询一条数据 print(res) cur.close() conn.close()
3、封装一个操作数据库的函数
def my_db(host,user,passwd,db,sql,port=3306,charset='utf8',autocommit=True): conn = pymysql.connect(host=host,user=user,password=passwd, db=db,port=port,charset=charset,autocommit=autocommit) cur = conn.cursor() cur.execute(sql) res = cur.fetchall() cur.close() conn.close() return res