|
Python连接MySQL数据库,简单读写
## Python连接MySQL数据库,简单读写
数字信息化,有时需要重原先遗留的mysql库中导入数据,通过python连接mysql可以灵活的进行数据录入工作。
### 1、环境安装
#### 1.1PyMySQL
mysql应该说是如今使用最为普遍的数据库了,没有之一,而Python作为最为流行的语言之一,自然少不了与mysql打交道,pymysql就是使用最多的工具库了。PyMySQL是从Python连接到MySQL数据库服务器的接口, 简单理解就是,Pymysql是python操作mysql数据库的三方模块。就是可以理解为可以在python中连接数据库写MySQL命令。
#### 1.2 pip安装
首先在本地安装PyMySQL,输入>pip install PyMySQL

#### 1.3 验证是否安好
pip list### 2、mysql连接及查询
#### 2.1 连接
连接数据库
con=pymysql.connect(host='localhost',user='root',password='mysql',database='zysq',charset='utf8')
#### 2.2 游标
连接完数据库后,需要创建一个游标对象,模块会通过游标对象来执行sql语句以及获取查询结果。
创建游标
cur=con.cursor()
执行sql语句
cur.execute(sql)
#### 2.3 运行结果

#### 2.4 代码实现
```python
# -*- coding: utf-8 -*-
# @Time : 2022年12月22日 10时50分
# @File : readmysql.py
# @notice :
import pymysql
#连接数据库
con=pymysql.connect(host='localhost',user='root',password='mysql',database='zysq',charset='utf8')
# 创建游标
cur=con.cursor()
# 查询数据库
sql=&#39;select * from blog where id<80&#39;
#获取结果
cur.execute(sql)
# 获取所有记录 fetchall--获取所有记录 fetchmany--获取多条记录,需传参 fetchone--获取一条记录
all=cur.fetchall()
# 输出查询结果
for item in all:
# print(item)
print(item[2])
# 关闭游标
cur.close()
# 关闭数据库连接,目的为了释放内存
cur.close()
```
### 3、数据库的增加删除修改
#### 3.1 事务处理
增删改,操作方式都一样,只是sql语句的不同,但特别需要注意的点是,我们需要提交事务,如果不提交事务,显示执行成功,但是表中并没有新增内容。
#### 3.2 删除修改
增加新表
```
# 创建表
# sql=&#34;&#34;&#34;CREATE TABLE frum (
# name CHAR(20) NOT NULL,
# lt CHAR(20),
# socre INT
# )&#34;&#34;&#34;
# cur.execute(sql)
```
如果需要删除,或者修改,只需修改sql语句就行了
#### 3.3 效果图

#### 3.4 代码实现
```python
# -*- coding: utf-8 -*-
# @Time : 2022年12月22日 10时50分
# @File : addmysql.py
# @notice :
import pymysql
#连接数据库
con=pymysql.connect(host=&#39;localhost&#39;,user=&#39;root&#39;,password=&#39;mysql&#39;,database=&#39;zysq&#39;,charset=&#39;utf8&#39;)
# 创建游标
cur=con.cursor()
# 创建表
# sql=&#34;&#34;&#34;CREATE TABLE frum (
# name CHAR(20) NOT NULL,
# lt CHAR(20),
# socre INT
# )&#34;&#34;&#34;
# cur.execute(sql)
# 查询数据库
sql=&#39;insert into frum (name,lt,socre) VALUES (%s,%s,%s)&#39;
data=[(&#34;李四&#34;,&#34;伤寒&#34;,10),(&#34;张六&#34;,&#34;内经&#34;,95)]
#获取结果
cur.executemany(sql,data)
#提交事务
con.commit()
# 关闭游标
cur.close()
# 关闭数据库连接,目的为了释放内存
cur.close()
```
## 其它
需要技术指导,育娃新思考,企业软件合作等更多服务请联系博主
可以**关注**我,**点赞**我、**评论**我、**收藏**我啦。 |
|