利用python中pymysql操作MySQL数据库的新手指南
作者:不二灵灭 发布时间:2024-01-24 22:09:49
标签:pymysql,mysql,数据库
目录
一. pymysql介绍
二. 连接数据库的完整流程
1. 引入pymysql模块
2. 创建连接对象
3. 使用连接对象创建游标对象
4. 准备需要使用的sql语句
5. 使用游标对象执行sql语句(如果是数据修改的操作,会返回受影响的行数)
6. 如果执行语句是查询操作,需要使用游标对象获取查询结果
7. 关闭游标对象
8. 关闭连接对象
三. 完整的简易源码
总结
一. pymysql介绍
pymysql 是在 Python3.x 版本中用于连接和操作 MySQL 服务器的一个库.
引入方式: pip install pymysql
pip工具是python的一个模块,因此在使用pip工具安装pymysql模块之前,首先确定python和pip工具都能正常工作
二. 连接数据库的完整流程
1. 引入pymysql模块
import pymysql # 引入第三方库pymysql
2. 创建连接对象
import pymysql
cnn = pymysql.connect(
user="user", # 用户名
password="password", # 密码
port=端口号, # 默认为3306,且此处为整数类型
database="数据库名",
host="连接IP地址",
charset="utf8")
3. 使用连接对象创建游标对象
1. 游标对象是通过链接对象进行创建的
2. 游标展示数据的四种方式:
1. Cursor ---> 默认使用, 元组套元组
2. SSCursor ---> 元组套元组的方式的生成器(优雅的迭代器)
3. Dictcursor ---> 列表套字典的方式
4. SSDictcursor ---> 列表套字典的方式的生成器
3. 创建语法(以最常用的列表套字典的形式举例)
cursor = database.cursor(cursor=pymysql.cursors.DictCursor
# cursor为游标对象名, 可按自己习惯自定义名字
4. 准备需要使用的sql语句
按照自己的需求准备sql语句, 不熟悉的同学可以点击下方链接, 复习我上期写的MySQL基础入门课程.
MySQL基础入门知识
5. 使用游标对象执行sql语句(如果是数据修改的操作,会返回受影响的行数)
# 执行语句比较简单, 就只写了这一个
cursor.execute(SQL语句)
6. 如果执行语句是查询操作,需要使用游标对象获取查询结果
1. 获取结果的语法:
1. 游标对象.fetchall() ---> 返回查询到的所有数据
2. 游标对象.fetchone() ---> 返回查询到的一条记录
3. 游标对象.fetchmany(记录数) ---> 返回查询到的指定记录数
2. 切换数据库语法:
1. 由链接对象取操作切换数据库
2. 链接对象.select_db("数据库名)
3. 具体语句(用一个变量data接受存储数据)
data = cursor.fetchall()
7. 关闭游标对象
游标对象.close()
8. 关闭连接对象
连接对象.close()
三. 完整的简易源码
# 1. 引入模块
import pymysql
# 2. 连接数据库
cnn = pymysql.connect(
user="root",
password="******",
port=3306,
database="mytest",
host="localhost",
charset="utf8"
)
# 3. 创建游标对象
my_cursor = cnn.cursor(cursor=pymysql.cursors.DictCursor)
# 4. SQL语句
my_sql = "select * from student"
# 5. 执行SQL ---> 通过游标对象执行
my_cursor.execute(my_sql)
# 6. 查看结果
data = my_cursor.fetchall()
# 7. 关闭连接
my_cursor.close()
database.close()
# 打印获得的数据, 检查执行是否正确
print(data)
来源:https://blog.csdn.net/m0_56232078/article/details/120413887
0
投稿
猜你喜欢
- 一、实例演示1.将一个大Excel等份拆成多个Excel2.将多个小Excel合并成一个大Excel并标记来源work_dir="
- 这个是用python实现的基本的增删改查的学生管理系统吧,其中主要是对输入的数据进行合法性检测的问题,这次又对函数进行了练习!掌握函数更加熟
- 一,VSCODE配置Markdown 打开左侧的extensions,或者使用 Ctrl+Shift+X,输入Markdown(1
- 一、find_element_by_id()find_element_by_id()1.从上面定位到的元素属性中,可以看到有个id属性:id
- 操作系统:win7 64位旗舰版mysql压缩包:mysql-5.7.11-winx64.zip1. 解压MySQL压缩包将下载的MySQL
- 参数让我们进一步看看CPU的数量是如何影响这些参数的。 参数fast_start_parallel_rollback Oracle并行机制中
- 学习神经网络的时候,网上的数据集已经分割成了batch,训练的时候直接使用batch.next()就可以获取batch,但是有的时候需要使用
- 属性多层数组数据的添加修改为什么需要使用Vue.set?vue中不能检测到数组的一些变化比如一下两种:1、数组长度的变化 vm.arr.le
- 一、yaml文件介绍yaml是一个专门用来写配置文件的语言。1. yaml文件规则区分大小写;使用缩进表示层级关系;使用空格键缩进,而非Ta
- 快速排序是C.R.A.Hoare于1962年提出的一种划分交换排序。它采用了一种分治的策略,通常称其为分治法(Divide-and-Conq
- 目录优化排序查询避免重复获取刚刚修改的数据行懒加载的联合查询优化排序查询自定义变量的一个重要特性是你可以同时将该变量的数学计算后的结果再赋值
- ThinkPHP模板的in标签与range标签用于判断某个模板变量是否在某个范围之内。1.in标签ThinkPHP的in标签用于某个模板变量
- 学习目的: 掌握最基本的Label、TextBox、Button控件用法 掌握用StringBuider类连接字符串 理解服务器的环境变量
- 写在前面在一些接口请求的场景中,我们希望携带的数据不希望是以明文的方式提交的,也就是需要对参数做一些混淆或者加密处理,后端拿到数据后再进行解
- WinHttp; // Microsoft WinHTTP Services, version 5.1Alias HTTPREQUEST_P
- LRU:least recently used,最近最少使用算法。它的使用场景是:在有限的空间中存储对象时,当空间满时,会按一定的原则删除原
- 一切从一个糟糕的浏览器开始,它完全不支持 XHTML。什么是 MIME Type? 为什么这么说呢?首先,我们要了解浏览器是如何处理内容的。
- 本文实例讲述了Python使用sklearn库实现的各种分类算法简单应用。分享给大家供大家参考,具体如下:KNNfrom sklearn.n
- Win8.1下安装Python3.6提示0x80240017错误,如何解决?定位原因缺少Windows补丁KB2999226解决方法到Mic
- 在一次ASP程序中不能正常连接MSSQL出现出错信息如下:以下为引用的内容:HTTP/1.1 200 OK S