您的位置:首页 > 新闻 > 热点要闻 > 礼品公司网站模板_成都网络公司小程序_seo快速排名软件_推广小程序拿佣金

礼品公司网站模板_成都网络公司小程序_seo快速排名软件_推广小程序拿佣金

2025/3/9 22:39:04 来源:https://blog.csdn.net/W1255453063/article/details/146103991  浏览:    关键词:礼品公司网站模板_成都网络公司小程序_seo快速排名软件_推广小程序拿佣金
礼品公司网站模板_成都网络公司小程序_seo快速排名软件_推广小程序拿佣金

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、mysql的基本语法
  • 二、python pymsql库的基本使用


前言

提示:这里可以添加本文要记录的大概内容:

pymysql的基本使用


提示:以下是本篇文章正文内容,下面案例可供参考

一、mysql的基本语法

# 创建数据库
create database jiuli;
# 删除数据库
drop database jiuli;# 切换或选择使用的数据库
use jiuli;# 创建表格
create table stu(s_id int(10) primary key auto_increment, # 主键id,不允许重复的.唯一的,自动增加s_name varchar(255) not null, # varchar字符串s_date date, # date日期s_money decimal(5,2) # decimal 小数
);添加数据
insert into 表(字段1,字段2,字段3...) values('值1','值2','值3'...); # 引号,代表的是数字,并不一定是`字符串`
实列:
inser into stu(s_name,s_date,s_money) values('九黎','1996-09-06','3.56');删除数据
删除必须给条件
语法规则:delete from 表 where 条件
delete from stu where s_id = '3'; # 删除s_id==3的学生修改数据
update 表 set 字段1 = '值1',字段2= '值2'... where 条件
update stu set s_name = '母老虎', s_money = 6.66 where s_id = '4';查数据
基本的查询逻辑
语法规则:select * |字段1,字段2 from 表 where 条件;
select * from stu; # 把要检索的数据.抽出来返回给你# =,!=,>,<,>=,<=,between and,in ,not in# = 相等的数据会被检索
select * from stu where s_name = "九黎";
# != 不相等的数据会被检索
select * from stu where s_name != "九黎";
# between and 在xxx与xxx之间
select * from stu where s_money BETWEEN 3 and 5;
# in 在xxx集合当中
select * from stu where s_name in ['九黎','灵儿'];

二、python pymsql库的基本使用

python pymsql库插入数据

# pip install pymysql
import pymysql
"""
pymysql默认开启事务:
1. 扣钱
2. 给人加钱
3. 记录转账信息
上述逻辑 是一个完整的一件事儿,其中任何要不出问题,都不应该视作结束.应该回归到原始状态.
必须得是上诉所有逻辑都不出错.才视为事件结束.
上述逻辑 就是事务事务:1. 提交最后一件事儿,完成了.之前的所有步骤的数据.要统一写入数据库2. 回滚其中任何一件事儿,出问题,应该回归到操作之前的状态.
"""
# 1 建立连接
# conn = pymysql.connect(
#     host="localhost",
#     user="root",
#     password="123456",
#     port=3306,
#     database="my"
# )
# 1045 "Access denied " 密码错误
# print(conn)# 创建游标(用到statement)
# cursor = conn.cursor()
# try:
#     # 2. 操作数据库
#     # 2.1 添加/修改/删除 数据
#     # 写sql语句 -> 高亮的显示 本质是字符串
#     sql = "insert into stu(s_name,s_date,s_money) values('志刚','1998-6-06','3.96')"
#     # 去执行这个sql
#
#     # 用游标执行sql语句
#     cursor.execute(sql)
#
#
#     # 提交事务 吧数据写入数据库
#     conn.commit()
#     print("完成")
# except Exception as e:
#     print(e)
#     # 出错了 不应该写入数据库, 应该回滚到操作之前的样子
#     conn.rollback() # 回滚
# finally:
#     # 关闭游标和断开连接
#     cursor.close()
#     conn.close()# 3. 查询
conn = pymysql.connect(host="localhost",user="root",password="123456",port=3306,database="my"
)
cursor = conn.cursor()
def save_to_db(s):# 网络安全方面,这样写sql是又被注入的风险的# sql = f"insert into stu(s_name,s_date,s_money) values('{name}','{birth}','{money}')"# 预处理 可以解决sql注入问题sql = "insert into stu(s_name,s_date,s_money) values(%s,%s,%s)" # 这里的%s并不是python的字符串格式化# cursor.execute(sql,数据)cursor.execute(sql,s)datas = [('志刚1','1998-6-06','3.96'),('志刚2','1998-6-06','3.96'),('志刚3','1998-6-06','3.96')
]
try:for d in datas:# 写入数据库save_to_db(d)conn.commit()
except Exception as e:print(e)conn.rollback()cursor.close()
conn.close()

python pymsql库查询数据

import pymysql
from pymysql.cursors import DictCursor
conn = pymysql.connect(host="localhost",user="root",password="123456",port=3306,database="my"
)# 登录逻辑
cursor = conn.cursor()
username = input("填写用户名:")
password = input("填写密码:")
sql = f"select * from user where username = %s and password = %s"
#如何能查到东西就是登录成功ret = cursor.execute(sql,(username,password))
# 读取查询结果
print(cursor.fetchall())# 查询
# cursor = conn.cursor(DictCursor)
# # cursor = conn.cursor()
# sql = "select * from user"
# cursor.execute(sql)
# print(cursor.fetchall())
# ((1, 'admin', '123456', None, '10086'), (2, 'qiaofu', '123', None, '10010'), (3, 'zhuye', '666', '666', '666'))
#[{'id': 1, 'username': 'admin', 'password': '123456', 'email': None, 'phone': '10086'}, {'id': 2, 'username': 'qiaofu', 'password': '123', 'email': None, 'phone': '10010'}, {'id': 3, 'username': 'zhuye', 'password': '666', 'email': '666', 'phone': '666'}]

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com