python操作mysql数据库
2021/12/20 19:21:56
本文主要是介绍python操作mysql数据库,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、安装pymysql
pip install pymysql
二、操作思路
(1)导入包
(2)创建连接
(3)创建空白板
(4)输入sql语句,执行sql语句
(5)打印结果,关闭空白板和数据库连接
import pymysql,pprint # 创建数据库的连接 db = pymysql.connect( host="localhost", port=端口号, user="root", password="密码", db="库名", cursorclass=pymysql.cursors.DictCursor) cur = db.cursor() # 创建空白版 sql = "SELECT * FROM student WHERE id = 1" cur.execute(sql) # 执行sql语句 res = cur.fetchall() # 查询所有结果 pprint.pprint(res) cur.close() db.close()
三、推荐方法
# 创建数据库连接 # 只需要用到一次是就用with open方法,自动关闭 with pymysql.connect(host="localhost", port=3306, user="root", password="---", db="----", cursorclass=pymysql.cursors.DictCursor) as db: # 游标 cur = db.cursor() sql = "SELECT * FROM t_patrol_article WHERE id = 1" cur.execute(sql) res = cur.fetchall() pprint.pprint(res) cur.close()
四、封装连接查询数据方法
注意点:
(1)创建连接数据库时,port参数必须时int整型,否则会报错
(2)创建、删除、修改一定要提交
(3)操作完数据库一定要记得关闭
(4)pymysql有个版本不支持with语法(踩过坑,升级到最新版本)
(5)字典:cursorclass=pymysql.cursors.DictCursor,否则默认返回数据类型为元组
额外科普的知识点:
“DML主要用来对数据库的数据进行操作,DDL主要是用在定义或改变表的结构。
1.DML是SELECT、UPDATE、INSERT、DELETE,就像它的名字一样,这4条命令是用来对数据库。
2.DDL比DML要多,主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定义或改变表(TABLE)的结构,数据类型。
import pymysql, pprint class HandleDb: # 创建连接只创建一次,游标只创建一次,用完就要关闭 def __init__(self): self.db = pymysql.connect(host="localhost", port=3306, user="root", password="-----", db="-----", autocommit=True, # 设置自动提交 cursorclass=pymysql.cursors.DictCursor) self.cur = self.db.cursor() # 返回所有的数据 def get_all_data(self, sql): try: self.cur.execute(sql) return self.cur.fetchall() except Exception as e: print(e,traceback.print_exc(file=open("log.txt","a"))) #异常处理写入到文件中 finally: self.db.close() # 返回指定的数据 def get_many_data(self, sql, size): try: self.cur.execute(sql) return self.cur.fetchmany(size) except Exception as e: print(e) finally: self.db.close() # 返回第一条数据 def get_one_data(self, sql): try: self.cur.execute(sql) return self.cur.fetchone() except Exception as e: print(e) finally: self.cur.close() if __name__ == '__main__': cl = HandleDb() res = cl.get_all_data(sql="select * from member where id < 3;") res1 = cl.get_many_data(sql="select * from member where id < 3;", size=2) res2 = cl.get_one_data(sql="select * from member where id < 3;") pprint.pprint(res) pprint.pprint(res1) pprint.pprint(res2)
这篇关于python操作mysql数据库的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-15MySQL教程:初学者必备的MySQL数据库入门指南
- 2024-11-15MySQL教程:初学者必看的MySQL入门指南
- 2024-11-04部署MySQL集群项目实战:新手入门教程
- 2024-11-04如何部署MySQL集群资料:新手入门指南
- 2024-11-02MySQL集群项目实战:新手入门指南
- 2024-11-02初学者指南:部署MySQL集群资料
- 2024-11-01部署MySQL集群教程:新手入门指南
- 2024-11-01如何部署MySQL集群:新手入门教程