Python与数据库的交互怎么实现
发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,本篇内容介绍了"Python与数据库的交互怎么实现"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Mo
千家信息网最后更新 2025年01月22日Python与数据库的交互怎么实现
本篇内容介绍了"Python与数据库的交互怎么实现"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
MongoDB
安装模块pip install pymongo
连接数据库
import pymongo client = pymongo.MongoClient()db = client["database_name"] # 跟上数据库名collection = db["set_name"] # 指定集合名
增删改查
添加--->insert_one | insert_many
collection.insert_one({"name":"kongshang","age":12})
查找--->find | find_one
collection.find()
注意要用list转换得到的数据
修改--->update_one | update_many
collection.update_one({"name":"kongshang"},{'$set':{"age":13}})
删除--->delete_one | delete_many
collection.delete_one({"name":"kongshang"})
封装
import pymongo class MyMonDB: def __init__(self, database, collection): # 数据库及集合 self.client = pymongo.MongoClient() # 连接数据库使用 self.db = self.client[database] # 指定使用的数据库 self.col = self.db[collection] # 指定使用的集合 def insert(self, data, onlyOne=True): # onlyOne用来控制插入单条还是多条数据 if onlyOne: self.col.insert_one(data) else: self.col.insert_many(data) def find(self, query=None, onlyOne=True): # query是查询条件 if onlyOne: ret = self.col.find_one(query) return ret else: ret = self.col.find(query) return list(ret) def update(self, data_old, data_new, onlyOne=True): if onlyOne: self.col.update_one(data_old, {"$set": data_new}) else: self.col.update_many(data_old, {"$set": data_new}) def delete(self, data, onlyOne=True): if onlyOne: self.col.delete_one(data) else: self.col.delete_many(data)
注意该数据库对大小写敏感
MySQL
安装模块pip install pymysql
连接数据库
import pymysql# 连接mysqldb_config = { "host": "127.0.0.1", "port": 3306, "user": "admin", "password": "qwe123", "db": "stu", # 指定操作的数据库 "charset": "utf8"} conn = pymysql.connect(**db_config) # mysql登录 **是字典拆包print(conn)
执行操作
cur = conn.cursor() # 返回一个执行数据库命令游标对象,通过游标对象执行SQL命令cur.execute("INSERT INTO stu (id, name) VALUES (1, 'nihao'),(2, 'ci')") # 执行SQL命令执行插入命令conn.commit() # 事务,提交保存cur.close() # 关闭游标对象conn.close() # 关闭数据库
查询数据
cur.execute("SELECT * FROM stu") # 执行SQL命令# print(list(cur))# print(cur.fetchone()) # 查询单条# print(cur.fetchmany(3)) # 查询多条print(cur.fetchall()) # 查询所有
异常处理
try: cur.execute("INSERT INTO stu (id, name) VALUES (1, 'nihao'), (2, 'ci')")except Exception as e: print(e) conn.rollback() # 事务回滚else: conn.commit() # 事务提交finally: cur.close() # 关闭游标对象 conn.close() # 关闭数据库
Redis
安装模块pip install redis
连接数据库
import redis # 登录数据库# host ip地址# decode_responses get获得键值时 True返回字符串数据,默认是False二进制数据# db 指定数据库,默认为1red = redis.StrictRedis(host="127.0.0.1", decode_responses=True, db=2)
执行操作
# 字符串red.set("num", 1)print(red.get("num"))print(red.type("num"))red.delete('num')# 综上,调用Redis数据库的方法是red.[输入redis数据库操作命令]()
"Python与数据库的交互怎么实现"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
数据
数据库
命令
查询
对象
游标
事务
模块
内容
多条
字符
字符串
更多
知识
登录
实用
学有所成
接下来
二进制
困境
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
中天科技软件开发工程师面试
计算机网络安全插画头像
服务器制作生产管理系统
健康系统中的服务器是什么
保定市金像软件开发公司
社交平台网络安全成本
蚂蚁区块链世界互联网领先科技
中国广电网络安全知识竞赛
购买哪家服务器不会被黑客攻击
网页显示图片 数据库
民国报刊数据库
常见的数据库技术有哪些
沈逸网络安全知乎
国内服务器设计
小度可以改服务器吗
数据库表自动失效
中学网络安全培训总结
网络安全气候变化等非传统问题
如何释放服务器内存
国家网络安全法制宣传周时间
隐私性属于网络安全的特征吗
青岛统计年鉴数据库
武汉大学网络安全示范
CVB原料数据库2007
腾讯软件开发师面试
期刊影响因子数据库
甘孜州市网络安全宣传
宝鸡软件开发销售价格
超融合服务器如何更换硬盘
配置管理器里没有服务器