赞
踩
数据库是应用程序保存数据的一个重要手段,因此学习python语言的数据库操作也是非常重要的内容。今天我们就来分享pymysql模块的使用。
我使用的是 Python 3.x 版本,我们可以通过 pip 直接安装:
pip install pymysql
也可以选择先去 https://pypi.org/project/PyMySQL/#files [1]下载 whl 文件,点击红框部分:
我把下载好的文件放到桌面,然后在 cmd 中进入桌面文件夹,输入如下语句:
pip install PyMySQL-0.9.3-py2.py3-none-any.whl
其中 install 为文件的全名,我们可以直接输入 pip install PyMy
然后按 Tab 自动补全。这样我们的模块就安装好了。
连接数据库非常简单,一个最简单的数据库操作步骤如下:
•获取本地 IP•连接数据库•获取数据库游标•数据库操作•关闭游标和数据库连接
在具体操作之前,我们先创建一个数据库,后续所有案例都会在该数据库中进行。我们先进入 MySQL,执行如下语句:
create database pydb;
接下来我们就可以开始操作数据库了,代码实现如下:
import pymysql, socket# 1、获取本地ip,我们使用socket获取'localhost'ip_address = socket.gethostbyname('localhost')# 2、连接数据库""" host:电脑的ip地址 port:数据库的端口号,该参数为整形 user:用户名 password:密码 database:数据库名称 charset:字符编码 该方法返回一个数据库的连接"""conn = pymysql.connect(host=ip_address, port=3306, user='root', password='123456', database=pydb, charset='utf8')# 3、获取数据库游标m_cursor = conn.cursor()# 4、数据库操作# 4.1、准备sql语句sql = """ create table user( name varchar(20), password varchar(20) );"""# 4.2、使用光标执行sql语句m_cursor.execute(sql)# 关闭光标和数据库连接,需要先关闭游标再关闭连接m_cursor.close()conn.close()
这样我们就在数据库中创建了一个 user 表了,我们可以查询一下:
use pydb;desc user;
结果如下:
+----------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+----------+-------------+------+-----+---------+-------+| name | varchar(20) | YES | | NULL | || password | varchar(20) | YES | | NULL | |+----------+-------------+------+-----+---------+-------+
添加数据和上面的操作大致一样,除了 SQL 语句不同外,我们还需要提交对数据库进行的操作。其步骤如下:
•获取本地 IP•连接数据库•获取数据库游标•数据库操作•提交已经进行的操作•关闭游标和数据库连接
这里加了一个步骤,其余都是相同的。代码如下:
import pymysql, socket# 1、获取本地ip,我们使用socket获取'localhost'ip_address = socket.gethostbyname('localhost')# 2、连接数据库conn = pymysql.connect(host=ip_address, port=3306, user='root', password='123456', database=pydb, charset='utf8')# 3、获取数据库游标m_cursor = conn.cursor()# 4、添加数据# 4.1、准备sql语句sql = "insert into user values('zack', '123456')"# 4.2、使用光标执行sql语句m_cursor.execute(sql)# 5、提交conn.commit()# 6、关闭游标和数据库连接m_cursor.close()conn.close()
大部分代码都一样,其中添加了如下一句代码:
conn.commit()
其作用就是提交你开始执行的 SQL 语句,执行该语句后数据库中的数据会发生相应的变化。
因为要删除数据,我们先在数据库中添加一些数据:
insert into user values('rudy', '123456');insert into user values('alice', '1111');insert into user values('alex', '1111');insert in
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。