当Python与MySQL搭档时,可以使用pymysql库实现连接MySQL以及数据操作。本文将为您详细介绍如何安装MySQL数据库驱动程序和pymysql库、如何连接MySQL、如何进行数据插入、查询、更新和删除操作,并附上相应的代码示例。
在连接MySQL之前,需要安装相应的MySQL数据库驱动程序和pymysql库。可以通过以下两个步骤完成安装:
安装MySQL数据库驱动程序:
在安装pymysql库之前,需要先安装MySQL数据库驱动程序,具体操作如下:
1)进入MySQL官网下载MySQL Connector,选择适合自己操作系统和Python版本的安装包。
2)安装MySQL Connector,可以选择使用pip来安装:
pip install mysql-connector-python
安装pymysql库:
安装完成MySQL数据库驱动程序后,可以通过以下命令来安装pymysql库:
pip install pymysql
安装完成后,就可以开始连接MySQL并进行数据操作了。
在使用pymysql库连接MySQL之前,需要先建立连接。连接MySQL的代码如下:
import pymysql
# 建立连接
conn = pymysql.connect(
host='localhost', # 数据库地址
port=3306, # 端口号,默认为3306
user='root', # 用户名
password='123456', # 密码
db='test_db' # 数据库名
)
print('连接成功')
上述代码首先导入pymysql库,然后调用connect()
方法建立连接,其中包括数据库的地址、端口号、用户名、密码和数据库名。连接成功后,程序会输出连接成功
,表示已经成功连接到MySQL数据库。如果连接失败则会抛出pymysql.err.OperationalError
异常。
在连接MySQL成功后,我们可以使用pymysql库进行数据插入。数据插入的代码如下:
import pymysql
# 建立连接
conn = pymysql.connect(
host='localhost',
port=3306,
user='root',
password='123456',
db='test_db'
)
# 获取游标
cursor = conn.cursor()
# 插入数据
sql = 'INSERT INTO user (name,age,sex) VALUES (%s,%s,%s)'
try:
cursor.execute(sql, ('张三', 25, '男'))
# 提交事务
conn.commit()
print('数据插入成功')
except:
# 回滚事务
conn.rollback()
print('数据插入失败')
# 关闭连接
conn.close()
上述代码首先建立连接,然后获取游标,并执行INSERT
语句插入数据。因为INSERT
语句使用参数占位符%s
,所以需要在执行时将具体的值通过元组传递给execute()
方法。如果插入成功,则输出数据插入成功
,否则输出数据插入失败
,并进行回滚操作。
在使用pymysql库进行数据查询时,需要先建立连接和获取游标。数据查询的代码如下:
import pymysql
# 建立连接
conn = pymysql.connect(
host='localhost',
port=3306,
user='root',
password='123456',
db='test_db'
)
# 获取游标
cursor = conn.cursor()
# 查询数据
sql = 'SELECT * FROM user'
cursor.execute(sql)
result = cursor.fetchall()
for row in result:
print(row)
# 关闭连接
conn.close()
上述代码执行SELECT
语句进行数据查询,使用fetchall()
方法获取结果并遍历输出。如果查询结果为空,则不会输出任何内容。
使用pymysql库进行数据修改时,同样需要建立连接和获取游标。数据修改的代码如下:
import pymysql
# 建立连接
conn = pymysql.connect(
host='localhost',
port=3306,
user='root',
password='123456',
db='test_db'
)
# 获取游标
cursor = conn.cursor()
# 修改数据
sql = 'UPDATE user SET age=%s WHERE name=%s'
try:
cursor.execute(sql, (30, '张三'))
# 提交事务
conn.commit()
print('数据修改成功')
except:
# 回滚事务
conn.rollback()
print('数据修改失败')
# 关闭连接
conn.close()
上述代码使用UPDATE
语句修改数据,同样使用参数占位符%s
,并将具体的值通过元组传递给execute()
方法。如果修改成功,则输出数据修改成功
,否则输出数据修改失败
,并进行回滚操作。
使用pymysql库进行数据删除时,同样需要建立连接和获取游标。数据删除的代码如下:
import pymysql
# 建立连接
conn = pymysql.connect(
host='localhost',
port=3306,
user='root',
password='123456',
db='test_db'
)
# 获取游标
cursor = conn.cursor()
# 删除数据
sql = 'DELETE FROM user WHERE name=%s'
try:
cursor.execute(sql, ('张三',))
# 提交事务
conn.commit()
print('数据删除成功')
except:
# 回滚事务
conn.rollback()
print('数据删除失败')
# 关闭连接
conn.close()
上述代码使用DELETE
语句删除数据,同样使用参数占位符%s
,并将具体的值通过元组传递给execute()
方法。如果删除成功,则输出数据删除成功
,否则输出数据删除失败
,并进行回滚操作。
在使用pymysql库进行数据操作时,需要注意事务的提交和回滚,保证数据操作的完整性。同时也需要对异常进行捕捉和处理,以保证程序的健壮性和稳定性。
希望本文对您在使用Python连接MySQL及数据操作方面有所帮助,更多详细信息请阅读pymysql库的官方文档。