pymysql的安装及操作

article/2025/11/8 10:19:43

1、pymysql的安装

1.1 conda环境解释器在线安装

以管理员身份运行终端或者使用Anaconda Powershell Prompt并以管理员身份运行

conda install -c conda-forge pymysql

注意:conda安装pymysql后,只有使用conda解释器才可以调用

1.2 Python环境在线安装

1、找到python安装位置,打开终端输入 where python

2、输入cd 进入python位置目录

在这里插入图片描述

3、进入Scripts

在这里插入图片描述

4、输入pip install pymysql即可

2、写操作流程

    1、建立数据库连接 (db = pymysql.connect(...))connect()参数:host(主机地址,本地localhost)、port(端口号,默认3306)user(用户名)、password(密码)、database(数据库)、charaset(编码方式,默认utf8)2、创建游标对象 (c = db.cursor())3、游标方法   c.execute("insert......")4、提交到数据库  db.commit()  将写操作提交到数据库(增删改)5、关闭游标对象  c.close()6、断开数据库连接   db.close()

3、写操作(插入)案例

3.1 案例1

Python中的sql这个字符串,格式与sql语句保持一致,即可以复制到终端运行

import pymysql# 连接数据库
db = pymysql.connect(host='localhost',port=3306,user='root',password='1234',database='student',charset='utf8')
# 获取游标(操作数据库,执行sql语句,承载结果)
cur = db.cursor()
# 执行SQL语句
sql = "insert into class (name,age,sex,score) values ('王俊龙',19,'w',67),('李伯俊',19,'m',81);"
cur.execute(sql)
# 提交写操作,可将多次写操作一起提交
db.commit()
cur.close()
db.close()

3.2 案例2

sql语句处理方式1:此种方式需要注意字符串占位符加引号’',目的是保持与sql语句格式完全匹配
sql语句:sql = “insert into class (name,age,sex,score) values (‘王俊龙’,19,‘w’,67),(‘李伯俊’,19,‘m’,81);” 故字符串占位符一定要加 引号
sql = “INSERT INTO interest (name,hobby,price,level,comment) VALUES (‘%s’,‘%s’,%f,‘%s’,‘%s’);” % (
name, hobby, price, level, comment)

import pymysql# 连接数据库
db = pymysql.connect(host='localhost',port=3306,user='root',password='1234',database='student',charset='utf8')
# 获取游标(操作数据库、执行sql语句、承载结果)
cur = db.cursor()
name = input("姓名:")
hobby = input("爱好:")
price = int(input("价格:"))
# 不用强转也可以,sql语句中字符串带'',
# 数字没有,而在下方格式化中,数字直接取代占位符,与sql语句一致;而字符串需要在占位符上加''
level = input("水平:")
comment = input("评语:")
# 注意:下列字符串格式化时一定要与sql语句格式一致,字段对应的值如果是字符串加 ''
# 例如:sql = "insert into class (name,age,sex,score) values ('王俊龙',19,'w',67),('李伯俊',19,'m',81);"
sql = "INSERT INTO interest (name,hobby,price,level,comment) VALUES ('%s','%s',%f,'%s','%s');" % (name, hobby, price, level, comment)
try:cur.execute(sql)db.commit()
except Exception as e:db.rollback()
finally:cur.close()db.close()

3.3 案例3

使用pymysql进行读操作,sql语句处理方式2
执行sql语句时,用参数二列表中的值顺次匹配%s
sql = “INSERT INTO interest (name,hobby,price,level,comment) VALUES (%s,%s,%s,%s,%s);”
cur.execute(sql, [name, hobby, price, level, comment])

import pymysqldb = pymysql.connect(host='localhost',port=3306,user='root',password='1234',database='student',charset='utf8')
cur = db.cursor()
name = input("姓名:")
hobby = input("爱好:")
price = input("价格:")
# 不用强转也可以,sql语句中字符串带'',
# 数字没有,而在下方格式化中,数字直接取代占位符,与sql语句一致;而字符串需要在占位符上加''
level = input("水平:")
comment = input("评语:")
sql = "INSERT INTO interest (name,hobby,price,level,comment) VALUES (%s,%s,%s,%s,%s);"
try:# 执行sql语句时,会自动查找VALUES后面的值,用参数2列表中的值顺次匹配,会自动适应sql语句格式# (不用管列表中值的数据类型,sql字符串中直接%s),# 此时sql这个字符串中的%s不用加''cur.execute(sql, [name, hobby, price, level, comment])db.commit()
except Exception as e:db.rollback()
finally:cur.close()db.close()

**注意:**写操作除上述的插入操作,还有删除、修改操作,过程与案例1、2相似,更换sql语句就可以,案例3情况,只能传递某些字段的值或参量,字段名与表名不可以传递

4、读操作流程

import pymysql# 连接数据库
db = pymysql.connect(host='localhost',port=3306,user='root',password='1234',database='student',charset='utf8')
# 创建游标对象
cur = db.cursor()
sql = "select * from interest"
# 执行sql语句
cur.execute(sql)
# 打印读取的内容
print(cur.fetchone())     # 返回值是一个元组
print(cur.fetchmany(3))   # 游标输出内容,等待下次输出时会接着上次游标所在位置读取(该语句输出三条记录)
print(cur.fetchall())     # 单独使用,输出所有的记录;但此时会在上述游标操作后的位置输出所有记录(返回值为元组,里面每一条记录也是元组)
cur.close()
db.close()
"""
# (1, 'Tom', 'sing,dance', Decimal('16800.00'), 'B', '表现不错,进步好快')
# ((2, 'kevin', 'draw', Decimal('18800.00'), 'A', '基础扎实,画风突出'), (3, 'lily', 'sing,draw', Decimal('13499.00'), 'C', '进步空间巨大'), (5, 'Mary', 'sing', Decimal('13900.00'), 'B', '未来可期'))
# ((6, 'Jim', 'sing,dance', Decimal('16900.00'), 'C', '再接再厉'),)
"""

http://chatgpt.dhexx.cn/article/k1EaMCPH.shtml

相关文章

安装pymysql

安装pymysql 1、检查Python版本 python2、检查pip pip --version3、如果没有pip,安装pip curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py # 下载安装脚本 sudo python get-pip.py # 运行安装脚本 或者 sudo python3 get-pip.py4、安装pymysql p…

oracle sql语句大全

oracle常用sql语句函数 sql执行顺序 •FROM •WHERE •GROUP BY •HAVING •SELECT •DISTINCT •UNION •ORDER BY SQL语言分为五大类 DDL(数据定义语言 Data Definition Language) - Create、Alter、Drop 这些语句自动提交,无需用Commit提交。 DQL(数据查询…

数据库基本SQL语句大全

数据库基本----SQL语句大全一、基础 1、说明:创建数据库 Create DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建 备份数据的 device USE master EXEC sp_addumpd…

常用SQL语句总结

文章目录 SQL介绍登录数据库数据库操作数据库的增删改查操作数据表的增删改查操作 数据操作插入数据修改数据删除数据查询数据存储过程流程控制三种循环while循环repeat循环loop循环 触发器函数索引 性能分析用户管理权限管理踩过的坑 SQL介绍 SQL是一种结构化的数据库查询和程…

SQL语句知识大全

目录导航 一、SQL简介1.什么是数据库2.数据库分类3.SQL 是什么?4.SQL 能做什么?5.RDBMS 二、基础语法1.创建数据库2.删除数据库3.创建表4.删除新表5.增加一个列6.添加主键7.创建索引8.创建视图9.几个简单的table操作的sql语句**选择:****插入…

SQL常用语句(大全)

我们先看一下表的结构: -- sql语句创建表 CREATE TABLE student2 (id int(11) NOT NULL AUTO_INCREMENT,stuname varchar(10) NOT NULL,class varchar(20) NOT NULL,sex int(11) NOT NULL,major varchar(20) NOT NULL,mathstore int(11) DEFAULT NULL,yuwenstore i…

南京有哪些不错的互联网公司

大家好呀,我是大白。被读者催了好久,我终于开始调研南京的互联网公司了。南京是很有吸引力的一座城市,我在西安读研时听我导师和其它老师闲聊,说很多我们学院看上的老师,最后都被南京的学校抢走了。最近我也发现许多安…

最新 955 不加班的公司名单

这是github上的一个开源项目:955.WLB,上面列举了程序员们汇总的 955 作息的公司名单,旨在促进码农的工作生活平衡,文末「阅读原文」附上了 github 项目地址,感兴趣可以看看。 996 工作制:即每天早 9 点到岗…

杭州互联网公司和生活成本

一二线大厂 字节跳动 基本情况 :字节总部在北京,在上海、深圳、杭州、广州、成都等地都有办公室。今年 6 月,抖音电商落户杭州。业务方向 :抖音电商、抖音餐饮、字节跳动广告业务、字节跳动本地生活工作地点 :余杭区中…

Java程序员,你会选择25k的996还是18k的965?

2019独角兽企业重金招聘Python工程师标准>>> 很多互联网公司,更多的创业公司,老板都喜欢玩996。一些情况是工作真的做不完,更多的情况是老板为了心里的满足,更多的是给投资人看看而已。相信大家也都明白,强…

西安互联网公司和生活成本

最近越来越多的人关注到西安这座城市,我就在这篇文章中替大家以程序员的视角看一看西安。我会从程序员在西安的工作机会、在西安的生活环境以及生活成本两个角度进行分析,给大家讲述一个程序员在西安生活的利弊。 工作机会 其实西安在前些年,还被称为互…

965一万,996两万,俩offer怎么选?

扫 码 带 你 走 进 程 序 员 的 欢 乐 源 泉 最近正是秋招季,不免想起很早之前校招的场景,除了每天焦虑面试,还有一点就是对于offer的选择很纠结,毕业后的第一家公司还是很重要的。 最近看脉脉上有人发帖提问:“965拿1…

最新 955 不加班公司名单

955 公司白名单。旨在让更多的人逃离 996,加入 955 的行列,享受生活。 996 工作制:即每天早 9 点到岗,一直工作到晚上 9 点。每周工作 6 天。 955 工作制:即每天早 9 点到岗,一直工作到下午 5 点。每周工作…

1075、965工作制:互联网打工人的集体假嗨?

实行“1075”(10点上班7点下班,一周工作5天)工作制10天后,大部分字节跳动员工没有感受到任何变化,他们甚至更忙了。 原本是弹性打卡的工作,现在突然有人专门查考勤,10点过5分没到公司就有被约谈…

公司工作流程——开发流程

摘要 本博文主要是介绍在公司中开发实际的流程,帮助你的更好的进入工作。快速熟悉的公司的流程。同时本人在世界五百强软件公司工作,我们我们公司的开发流程请大家参考,每一个公司的流程稍微不一样。但是大致的流程是一致的。 工作岗位介绍…

Python办公室中 一个965被一群996团团围住 逼问工作摸鱼秘诀

背景 清华大学都在各位劝摸鱼 但摸鱼也有摸鱼的门道 在职场,这一类同事经常卡着点走出办公室,绝不在下班时间占用公司一分一毫的资源 你以为他们是在放飞自我、享受生活。 但是当内部升值或者加薪到来之时,认认真真上班的你却没有收到重…

选择25k的996还是18k的965

来源:http://h5ip.cn/hSDk 很多互联网公司,更多的创业公司,老板都喜欢玩996。一些情况是工作真的做不完,更多的情况是老板为了心里的满足,更多的是给投资人看看而已。相信大家也都明白,强制996必然导致的是效率低下&am…

推荐一些小而美的互联网公司

CSDN 的小伙伴们大家好,我是二哥呀。 相信大家都能感受到,今年的秋招形势非常严峻。所以二哥昨天给大家推荐了一波有哪些值得计算机专业加入的国企,就是希望大家能把投递的公司范围扩大一些。 那今天再来给CSDN的读者朋友们分享一篇二哥的编…

选择 25k 的 996 还是 18k 的 965

阅读本文大概需要 3.7 分钟。 文中部分内容来源:http://h5ip.cn/hSDk 最近的 996.ICU 话题持续在火爆,一般热点新闻的热度持续时间为一星期,这次是程序们的集体发声导致,戳中了很多人的心声,继而热度不减。 很多互联网公司&#x…

选择 25k 的 996 还是 18k 的 965

阅读本文大概需要 3.7 分钟。 文中部分内容来源:http://h5ip.cn/hSDk 最近的 996.ICU 话题持续在火爆,一般热点新闻的热度持续时间为一星期,这次是程序们的集体发声导致,戳中了很多人的心声,继而热度不减。 很多互联网公司&#x…