zdppy_mcrud操作MySQL数据库教程

01 创建数据库连接

.env配置文件

ZDPPY_MCRUD_HOST=192.168.234.130
ZDPPY_MCRUD_PORT=3306
ZDPPY_MCRUD_USERNAME=root
ZDPPY_MCRUD_PASSWORD=zhangdapeng520
ZDPPY_MCRUD_DATABASE=zdppy_mcrud_demo

连接到MySQL数据库:

import env
import mcrudenv.load(".env")
db = mcrud.new_env()
print(db.get_all_database())

02 创建表格和删除表格

import env
import mcrudenv.load(".env")
db = mcrud.new_env()# 创建表格
table = "user"
columns = ["name varchar(255)","age int"
]
db.add_table(table, columns)
print(db.get_all_table())# 删除表
db.delete_table(table)
print(db.get_all_table())

03 新增数据

import env
import mcrudenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","age int"
]
db.add_table(table, columns)
print(db.get_all_table())# 新增数据
db.add("user",["id", "name", "age"],[1, "张强", 18],
)
print(db.get_all("user"))# 删除表
db.delete_table(table)
print(db.get_all_table())

04 批量新增数集

import env
import mcrudenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","age int"
]
db.add_table(table, columns)
print(db.get_all_table())# 新增数据
# 同时新增张三、李四、王五三个用户
db.add_many(table,["id", "name", "age"],[[1, "张三", 18],[2, "李四", 24],[3, "王五", 35],],
)
users = db.get_all(table)
for user in users:print(user)# 删除表
db.delete_table(table)
print(db.get_all_table())

05 练习

用户表:ID、name姓名,age年龄。

生成100个随机的用户,并查询user表中所有的用户信息。

核心代码:

data = []
for i in range(1, 101):data.append([str(i),rand.user.name(),rand.user.age(),])
db.add_many(table,["id", "name", "age"],data,
)
users = db.get_all(table, limit=100)
print(len(users))
for user in users:print(user)

完整代码:

import env
import mcrud
import randenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","age int"
]
db.add_table(table, columns)# 新增数据
data = []
for i in range(1, 101):data.append([str(i),rand.user.name(),rand.user.age(),])
db.add_many(table,["id", "name", "age"],data,
)
users = db.get_all(table, limit=100)
print(len(users))
for user in users:print(user)# 删除表
db.delete_table(table)

06 修改数据

核心代码:

db.update(table,1,["name"],["张三"],
)

完整代码:

import env
import mcrudenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","age int"
]
db.add_table(table, columns)# 新增数据
# 同时新增张三、李四、王五三个用户
db.add_many(table,["id", "name", "age"],[[1, "张三123", 18],[2, "李四", 24],[3, "王五", 35],],
)# 查询
users = db.get_all(table)
for user in users:print(user)# 更新
db.update(table,1,["name"],["张三"],
)# 查询
print("-----------------")
users = db.get_all(table)
for user in users:print(user)# 删除表
db.delete_table(table)

07 练习

用户表:ID、name姓名,age年龄。

新增用户:1、张强,22

查询所有用户

修改用户:将ID为1的用户的年龄改为18岁

查询所有用户

核心代码:

db.update(table,4,["age"],[18],
)

完整代码:

import env
import mcrudenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","age int"
]
db.add_table(table, columns)# 新增数据
db.add_many(table,["id", "name", "age"],[[1, "张三123", 18],[2, "李四", 24],[3, "王五", 35],[4, "张强", 35],],
)# 查询
users = db.get_all(table)
for user in users:print(user)# 更新
db.update(table,4,["age"],[18],
)# 查询
print("-----------------")
users = db.get_all(table)
for user in users:print(user)# 删除表
db.delete_table(table)

08 删除数据

核心代码:

db.delete(table,1,
)

完整代码:

import env
import mcrudenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","age int"
]
db.add_table(table, columns)# 新增数据
# 同时新增张三、李四、王五三个用户
db.add_many(table,["id", "name", "age"],[[1, "张三123", 18],[2, "李四", 24],[3, "王五", 35],],
)# 查询
users = db.get_all(table)
for user in users:print(user)# 删除
db.delete(table,1,
)# 查询
print("-----------------")
users = db.get_all(table)
for user in users:print(user)# 删除表
db.delete_table(table)

09 练习

用户表:ID、name姓名,age年龄。

新增用户:1、张强,22

新增用户:2、李四,24

新增用户:3、王五,35

查询所有用户

删除用户:将ID为3的用户删除

删除用户:将ID为2的用户删除

查询所有用户

核心代码:

db.add_many(table,["id", "name", "age"],[[1, "张强", 22],[2, "李四", 24],[3, "王五", 35],],
)db.delete(table,3,
)
db.delete(table,2,
)

完整代码:

import env
import mcrudenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","age int"
]
db.add_table(table, columns)# 新增数据
# 同时新增张三、李四、王五三个用户
db.add_many(table,["id", "name", "age"],[[1, "张强", 22],[2, "李四", 24],[3, "王五", 35],],
)# 查询
users = db.get_all(table)
for user in users:print(user)# 删除
db.delete(table,3,
)
db.delete(table,2,
)# 查询
print("-----------------")
users = db.get_all(table)
for user in users:print(user)# 删除表
db.delete_table(table)

10 根据ID查询数据

核心代码:

user = db.get_by_id(table, 1)

完整代码:

import env
import mcrudenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","age int"
]
db.add_table(table, columns)# 新增数据
db.add_many(table,["id", "name", "age"],[[1, "张三", 18],[2, "李四", 24],[3, "王五", 35],],
)# 查询
user = db.get_by_id(table, 1)
print(user)# 删除表
db.delete_table(table)

11 练习

用户表:ID、name姓名,age年龄。

生成100个随机的用户,并查询user表中所有的用户信息。

查询ID为33用户的用户名和年龄是什么,以及他的添加时间是什么时候。

核心代码:

# 新增数据
data = []
for i in range(1, 101):data.append([str(i),rand.user.name(),rand.user.age(),])
db.add_many(table,["id", "name", "age"],data,
)# 根据ID查询
user = db.get_by_id(table, 33)
print(user)
print("姓名:", user.get("name"))
print("年龄:", user.get("age"))
print("添加时间:", user.get("add_time"))

完整代码:

import env
import mcrud
import randenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","age int"
]
db.add_table(table, columns)# 新增数据
data = []
for i in range(1, 101):data.append([str(i),rand.user.name(),rand.user.age(),])
db.add_many(table,["id", "name", "age"],data,
)# 根据ID查询
user = db.get_by_id(table, 33)
print(user)
print("姓名:", user.get("name"))
print("年龄:", user.get("age"))
print("添加时间:", user.get("add_time"))# 删除表
db.delete_table(table)

12 根据ID列表查询

核心代码:

# 新增数据
data = []
for i in range(1, 101):data.append([str(i),rand.user.name(),rand.user.age(),])
db.add_many(table,["id", "name", "age"],data,
)# 根据ID列表查询
users = db.get_by_ids(table, [33, 66, 99])
for user in users:print(user)print("姓名:", user.get("name"))print("年龄:", user.get("age"))print("添加时间:", user.get("add_time"))print("===============================")

完整代码:

import env
import mcrud
import randenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","age int"
]
db.add_table(table, columns)# 新增数据
data = []
for i in range(1, 101):data.append([str(i),rand.user.name(),rand.user.age(),])
db.add_many(table,["id", "name", "age"],data,
)# 根据ID列表查询
users = db.get_by_ids(table, [33, 66, 99])
for user in users:print(user)print("姓名:", user.get("name"))print("年龄:", user.get("age"))print("添加时间:", user.get("add_time"))print("===============================")# 删除表
db.delete_table(table)

13 练习

用户表:ID、name姓名,gender性别,age年龄。

生成100个随机的用户,并查询user表中所有的用户信息。

查询ID为1,2,100的用户的用户名,性别和年龄是什么。

核心代码:

# 新增数据
data = []
for i in range(1, 101):data.append([str(i),rand.user.name(),rand.user.gender(),rand.user.age(),])
db.add_many(table,["id", "name", "gender", "age"],data,
)# 根据ID列表查询
users = db.get_by_ids(table, [1, 2, 100])
for user in users:print(user)print("姓名:", user.get("name"))print("年龄:", user.get("age"))print("性别:", user.get("gender"))print("===============================")

完整代码:

import env
import mcrud
import randenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","gender varchar(6)",  # 男 女 保密"age int"
]
db.add_table(table, columns)# 新增数据
data = []
for i in range(1, 101):data.append([str(i),rand.user.name(),rand.user.gender(),rand.user.age(),])
db.add_many(table,["id", "name", "gender", "age"],data,
)# 根据ID列表查询
users = db.get_by_ids(table, [1, 2, 100])
for user in users:print(user)print("姓名:", user.get("name"))print("年龄:", user.get("age"))print("性别:", user.get("gender"))print("===============================")# 删除表
db.delete_table(table)

14 根据ID列表删除

核心代码:

db.delete_by_ids(table, [1, 2, 100])

完整代码:

import env
import mcrud
import randenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","gender varchar(6)",  # 男 女 保密"age int"
]
db.add_table(table, columns)# 新增数据
data = []
for i in range(1, 10):data.append([str(i),rand.user.name(),rand.user.gender(),rand.user.age(),])
db.add_many(table,["id", "name", "gender", "age"],data,
)# 根据ID列表删除
db.delete_by_ids(table, [1, 2, 100])# 查询所有
users = db.get_all(table)
for user in users:print(user)# 删除表
db.delete_table(table)

15 练习

用户表:ID、name姓名,gender性别,age年龄。

生成100个随机的用户,并查询user表中所有的用户信息。

删除ID小于98的用户信息。

查询所有的用户。

核心代码:

# 新增数据
data = []
for i in range(1, 101):data.append([str(i),rand.user.name(),rand.user.gender(),rand.user.age(),])
db.add_many(table,["id", "name", "gender", "age"],data,
)# 根据ID列表删除
ids = list(range(1, 99))
db.delete_by_ids(table, ids)

完整代码:

import env
import mcrud
import randenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","gender varchar(6)",  # 男 女 保密"age int"
]
db.add_table(table, columns)# 新增数据
data = []
for i in range(1, 101):data.append([str(i),rand.user.name(),rand.user.gender(),rand.user.age(),])
db.add_many(table,["id", "name", "gender", "age"],data,
)# 根据ID列表删除
ids = list(range(1, 99))
db.delete_by_ids(table, ids)# 查询所有
users = db.get_all(table)
for user in users:print(user)# 删除表
db.delete_table(table)

16 根据条件删除

假如我现在想要删除姓名是张三的用户,这个时候我们就需要使用delete_by这样的一个方法,根据条件去删除数据。

核心代码:

db.delete_by(table, {"name": "张三"})

完整代码:

import env
import mcrudenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","age int"
]
db.add_table(table, columns)# 新增数据
db.add_many(table,["id", "name", "age"],[[1, "张三", 18],[2, "李四", 24],[3, "王五", 35],],
)# 删除
db.delete_by(table, {"name": "张三"})# 查询
users = db.get_all(table)
for user in users:print(user)# 删除表
db.delete_table(table)

17 练习

用户表:ID、name姓名,gender性别,age年龄。

生成100个随机的用户,并查询user表中所有的用户信息。

删除年龄为33岁的用户信息。

查询所有的用户。

核心代码:

db.delete_by(table, {"age": 33})

完整代码:

import env
import mcrud
import randenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","gender varchar(6)",  # 男 女 保密"age int"
]
db.add_table(table, columns)# 新增数据
data = []
for i in range(1, 101):data.append([str(i),rand.user.name(),rand.user.gender(),rand.user.age(),])
db.add_many(table,["id", "name", "gender", "age"],data,
)# 根据ID列表删除
db.delete_by(table, {"age": 33})# 查询所有
users = db.get_all(table)
for user in users:print(user)# 删除表
db.delete_table(table)

18 根据条件更新

我们想要将年龄是33岁的用户,把他们的年龄,统一改成34岁,这个时候就需要用update_by这个方法。

核心代码:

db.update_by(table, {"age": 33}, ["age"], [34])

完整代码:

import env
import mcrud
import randenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","gender varchar(6)",  # 男 女 保密"age int"
]
db.add_table(table, columns)# 新增数据
data = []
for i in range(1, 101):data.append([str(i),rand.user.name(),rand.user.gender(),rand.user.age(),])
db.add_many(table,["id", "name", "gender", "age"],data,
)# 更新
db.update_by(table, {"age": 33}, ["age"], [34])# 查询所有
users = db.get_all(table)
for user in users:if user.get("age") == 34:print(user)# 删除表
db.delete_table(table)

19 练习

用户表:ID、name姓名,gender性别,age年龄。

生成100个随机的用户,其中有10个用户叫张三,并查询user表中所有的用户信息。

将姓名是张三的用户,年龄改为33。

查询所有的用户。

核心代码:

# 新增数据
data = []
for i in range(1, 101):name = rand.user.name()if i < 11:name = "张三"data.append([str(i),name,rand.user.gender(),rand.user.age(),])
db.add_many(table,["id", "name", "gender", "age"],data,
)# 更新
db.update_by(table, {"name": "张三"}, ["age"], [33])# 查询所有
users = db.get_all(table, limit=100)
for user in users:if user.get("name") == "张三":print(user)

完整代码:

import env
import mcrud
import randenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","gender varchar(6)",  # 男 女 保密"age int"
]
db.add_table(table, columns)# 新增数据
data = []
for i in range(1, 101):name = rand.user.name()if i < 11:name = "张三"data.append([str(i),name,rand.user.gender(),rand.user.age(),])
db.add_many(table,["id", "name", "gender", "age"],data,
)# 更新
db.update_by(table, {"name": "张三"}, ["age"], [33])# 查询所有
users = db.get_all(table, limit=100)
for user in users:if user.get("name") == "张三":print(user)# 删除表
db.delete_table(table)

20 根据条件查询

就比如说上个练习,其中有10个叫张三的用户,那我就想把名字叫张三的查询出来,这个时候就可以用get_by条件查询。

核心代码:

users = db.get_by(table, {"name": "张三"})
for user in users:print(user)

完整代码:

import env
import mcrud
import randenv.load(".env")
db = mcrud.new_env()# 创建表
table = "user"
columns = ["name varchar(255)","gender varchar(6)",  # 男 女 保密"age int"
]
db.add_table(table, columns)# 新增数据
data = []
for i in range(1, 101):name = rand.user.name()if i < 11:name = "张三"data.append([str(i),name,rand.user.gender(),rand.user.age(),])
db.add_many(table,["id", "name", "gender", "age"],data,
)# 更新
db.update_by(table, {"name": "张三"}, ["age"], [33])# 查询
users = db.get_by(table, {"name": "张三"})
for user in users:print(user)# 删除表
db.delete_table(table)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/15722.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于JAVA GUI体育馆管理系统的会员功能

Java GUI即Java图形用户界面&#xff0c;是一种使用图形化元素&#xff08;如窗口、按钮、文本框等&#xff09;来构建用户界面的技术。它基于Java的Swing框架&#xff0c;可以用于创建各种复杂的用户界面&#xff0c;包括窗口、对话框、菜单、按钮、文本框、复选框、下拉列表等…

SQL学习小记(一)

SQL学习小记&#xff08;一&#xff09; 1. 存储过程&存储函数1.1. 存储过程1.2. 存储函数 2. DEFINER3. INSERT INTO&#xff08;插入新记录&#xff09;4. REPLACE()…AS…5. SUM()函数6. CASE WHEN7. STR_TO_DATE日期时间处理函数8. SUBSTRING函数9. dateFormat函数10. …

神奇动物在哪里?斯洛文尼亚旅游之野生动物寻踪

不仅拥有优美动人的自然风光&#xff0c;斯洛文尼亚还以其丰富的生物多样性而闻名。得益于国家对大自然开展的保护工作&#xff0c;斯洛文尼亚超过三分之一的国土面积都被规划为保护区&#xff0c;拥有约1.5万种动物和6000种植物&#xff0c;其中不乏众多特有、稀有和濒危动植物…

美国FDA认证是什么,食品FDA注册申请流程

​美国FDA认证是什么&#xff1f; 美国FDA认证&#xff0c;全称为美国食品药品监督管理局&#xff08;Food and Drug Administration&#xff09;的认证&#xff0c;是美国政府为了确保食品、药品、医疗器械等产品的安全性和有效性所设立的重要制度。FDA认证的种类繁多&#x…

【linux】k掉僵尸进程

ps -ef | grep username | grep -v grep | awk {print $2} | xargs kill -9

DT浏览器有一些特点和优势,可能是人们选择使用的原因

DT浏览器有一些特点和优势&#xff0c;可能是人们选择使用的原因&#xff1a; - 好评如潮&#xff1a;DT浏览器在网络上获得了众多用户的好评&#xff0c;口碑良好。 - 使用微软搜索引擎技术&#xff1a;DT浏览器采用了微软的搜索引擎技术&#xff0c;在搜索内容上提供了国内…

Gitlab安装

配置文件&#xff1a; /etc/gitlab/gitlab.rb日志文件&#xff1a; /var/log/gitlab/数据文件&#xff1a; /var/opt/gitlab/静态文件和网页内容&#xff1a; /opt/gitlab/embedded/service/gitlab-rails/public/ # 查看当前状态 git status # 提交本地更改 git commit -m &q…

反编译 Trino Dockerfile

文章目录 反编译 Trino Dockerfile反编译Dockerfile命令反编译后Dockerfile内容获取 Trino 启动脚本卸载 反编译 Trino Dockerfile 反编译Dockerfile命令 alias dfimage"docker run -v /var/run/docker.sock:/var/run/docker.sock --rm ghcr.io/laniksj/dfimage" d…

通过Wirtinger流进行相位恢复:理论与算法

文章目录 1. 简介2. 算法描述2.1 初始化(Initialization)2.2 迭代更新(Iterative Updates)2.3 学习率调整&#xff08;Learning Rate Adjustment&#xff09; 3. 代码实现3.1 一维信号测试 &#xff08;Gaussian model&#xff09;3.2 一维信号测试 &#xff08;Coded diffract…

基于Netty实现WebSocket客户端

本文是基于Netty快速上手WebSocket客户端&#xff0c;不涉及WebSocket的TLS/SSL加密传输。 WebSocket原理参考【WebSocket简介-CSDN博客】&#xff0c;测试用的WebSocket服务端也是用Netty实现的&#xff0c;参考【基于Netty实现WebSocket服务端-CSDN博客】 一、基于Netty快速…

docker image上传至docker hub

要将 Docker 镜像上传到 Docker Hub&#xff0c;你需要遵循以下步骤&#xff1a; 登录到 Docker Hub&#xff1a; 确保你在 Docker Hub 上有一个账号。如果没有&#xff0c;请前往 Docker Hub (https://hub.docker.com/) 注册一个账号。 在终端中使用以下命令登录到 Docker …

Java中的弱引用与强引用

引用是Java中内存管理和垃圾回收机制的重要组成部分&#xff0c;Java 提供了多种类型的引用来允许开发者以不同的方式管理内存&#xff0c;其中最常用的是强引用&#xff08;strong reference&#xff09;和弱引用&#xff08;weak reference&#xff09;。以下是对这些引用类型…

【C++】牛客——BC157 素数回文

✨题目链接&#xff1a; BC157 素数回文 ✨题目描述 现在给出一个素数&#xff0c;这个素数满足两点&#xff1a; 只由1-9组成&#xff0c;并且每个数只出现一次&#xff0c;如13,23,1289。 位数从高到低为递减或递增&#xff0c;如2459&#xff0c;87631。 请你判断一下&…

python多进程multiprocessing卡住问题

一&#xff1a;背景 在使用多进程时&#xff0c;process.join()后面的代码并不会执行&#xff0c;一直卡在了第一个进程join()哪里不动。 环境&#xff1a;python3.8&#xff0c;centos7&#xff0c;multiprocessing库&#xff0c;使用mp.Queue() 二&#xff1a;调试过程 打…

从零开始搭建Springboot项目脚手架4:保存操作日志

目的&#xff1a;通过AOP切面&#xff0c;统一记录接口的访问日志 1、加maven依赖 2、 增加日志类RequestLog 3、 配置AOP切面&#xff0c;把请求前的request、返回的response一起记录 package com.template.common.config;import cn.hutool.core.util.ArrayUtil; import cn.hu…

单选或者多选的知识问题调研系统,怎么使用Neo4j的图数据库来实现

为了使用Neo4j的图数据库实现单选或多选的知识问题调研系统&#xff0c;你需要设计和实现以下几个步骤&#xff1a; 设计节点和关系插入数据定义查询和更新逻辑开发前端和后端应用来与Neo4j进行交互 1. 设计节点和关系 节点类型 Question&#xff1a;表示一个问题&#xff…

最新文章合集

GitHub宝藏项目&#xff1a;每天一个&#xff0c;让你的技术库增值不停&#xff01; STORM、SuperMemory、Awesome Chinese LLM、AI写作助手、资料搜集、文章生成、视角问题引导、模拟对话策略、内容导入、浏览器插件、资源库、开源微调模型 开发者必看&#xff1a;Linux终端…

Vue 3指令与事件处理

title: Vue 3指令与事件处理 date: 2024/5/25 18:53:37 updated: 2024/5/25 18:53:37 categories: 前端开发 tags: Vue3基础指令详解事件处理高级事件实战案例最佳实践性能优化 第1章 Vue 3基础 1.1 Vue 3简介 Vue 3 是一个由尤雨溪&#xff08;尤大&#xff09;领导的开源…

方言和大语言模型

方言多样性及其对语言模型的影响 语言的演变是不可避免的&#xff0c;反映并推动了重大的社会变革和传统。语言接触往往会推动我们说话方式的创新&#xff0c;在美国全球文化的影响下&#xff0c;一种新的叙事正在其语言织锦中展开。 例如&#xff0c;在佛罗里达州南部&#…

Qt 在windows下显示中文

Qt在windows平台上显示中文&#xff0c;简直是一门玄学&#xff0c;经过测试&#xff0c;有如下发现&#xff1a; 1&#xff0c; 环境&#xff1a;Qt 5.15.2 vs2019 64位 win11系统 默认用Qt 创建的文件使用utf-8编码格式&#xff0c;此环境下 中文没有问题 ui->textE…