Python连接并操作Mysql数据库【重点】


作者简介:大学机械本科,野生程序猿,学过C语言,玩过前端,还鼓捣过嵌入式,设计也会一点点,不过如今痴迷于网络爬虫,因此现深耕Python、数据库、seienium、JS逆向、安卓逆向等等,,目前为全职爬虫工程师,学习的过程喜欢记录,目前已经写下15W字电子笔记,因此你看到了下面这篇文章~


技术栈:Python、HTML、CSS、JavaScript、C、Xpath语法、正则、、MySQL、Redis、MongoDB、Scrapy、Pyspider、Fiddler、Mitmproxy、分布式爬虫、JAVA等


个人博客:https://pythonlamb.github.io/


大学作品合集:https://sourl.cn/h9M2jX


欢迎点赞⭐️收藏关注留言呀


登高必自卑,行远必自迩.
我始终坚信越努力越幸运
⭐️ 那些打不倒我们的终将会让我们变得强大
希望在编程道路上深耕的小伙伴都会越来越好


文章目录

    • python连接操作MySQL
      • python 连接数据库的功能
      • python 连接数据库的步骤并实现查询数据库操作
      • 用 python 连接数据库并实现数据库的增删改操作
      • 游标对象的 fetchone 与 fetchall 方法在数据库不同操作时打印结果的不同!


python连接操作MySQL

python 连接数据库的功能

答:用 python 代码充当客户端,对数据进行增删改查等操作

python 连接数据库的步骤并实现查询数据库操作

连接前准备: pip3 install pymysql 安装 pymysql 包

第一步:导入 pymysql 模块 即 import pymysql

第二步:建立数据库连接对象(相当于建立一条通信的高速公路)

语法:connection = pymysql.connect(host,port,root,possword,database,charset)

参数详解:

host:数据库所在的主机

port:连接数据库主机的端口号,可省略,默认3306

user:连接数据库用户名

password:连接数据库密码

database:要连接的数据库名

charset:通信采用的编码,可省略,默认是 utf-8

第三步:在连接(公路)的基础上,(利用高速公路)创建游标对象(相当于高速公路上的通信兵)
详解:cursor 相当于数据库与 python 端的通信兵,数据库数据的操作以及取出都是靠这通信兵来完成

语法:游标对象 = 连接对象.cursor() 例如 cursor_obj = connection.cursor()

第四步:利用通信兵的 execute 方法对数据库的数据进行查询操作,并返回影响数据库几行数据的结果!

关键字:execute

语法:num_result = cursor_obj.execute(SQL语句)

注意:

1:返回的结果是num类型

2:SQL语句是查询语句那就影响所有行数

3:SQL语句是字符串类型

第五步:利用通信兵的fetchone或者fetchall方法查询数据库的数据

关键字:

fetchone():查询数据库第一行数据

fetchall():查询数据库所有数据

语法:

1:data_result = cursor_obj.fetchone( )

2:data_result = cursor_obj.fetchall( )

注意:fetchone或者fetchall方法查询数据返回的结果都是元组,不同的是fetchone返回的是一个元组,如果数据库有多行数据则fetchall返回的是元组的嵌套

第六步:关闭通信兵以及高速公路

关键字:close

语法:

connection.close()
cursor_obj.close( )

截图演示:

Python连接并操作Mysql数据库【重点】_第1张图片

代码演示:

Python连接并操作Mysql数据库【重点】_第2张图片

用 python 连接数据库并实现数据库的增删改操作

关键字:execute

语法:

返回影响行数值 = 游标对象 . execute(增删改SQL语句) 例如 result_num = cursor_obj.execute(SQL语句)

连接对象.commit() 即对数据表修改后需要提交!!

注意事项:

1:在对数据库进行增删改操作之后,需要提交修改,做的更改才会生效,否则不生效

2:对数据库进行增删改需要提交,查询操作不需要提交!

3:commit提交不是用游标对象提交,而是用连接对象来提交

代码演示:

Python连接并操作Mysql数据库【重点】_第3张图片

游标对象的 fetchone 与 fetchall 方法在数据库不同操作时打印结果的不同!

答:fetchone()与fetchall()方法只有在查询数据库(即查询数据库的SQL语句:select……)的时候才能打印出数据,当增删改数据库里面数据的时候,使用fetchone()或fetchall()方法是查询不出来数据的

持续更新中…

你可能感兴趣的:(Python爬虫,数据库专区,Linux专区,数据库,python,mysql,通信,pymysql)