python3对接mysql数据库实例详解

yipeiwu_com6年前Python基础

Python3 MySQL数据库连接,假设MySQL数据库已经安装好了,并创建好了数据库(后面抽点时间将数据库的安装总结下)。

 PyMySQL是Python3中用于连接MySQL服务器的一个库,Python2中则使用mysqldb。因此你在编码之前一定要看清楚自己使用的是哪个版本,博主刚开始没有意识到这个导致后面运行时报错,花了好久才定位出原因,大家在用的时候一定要引以为戒。

这里再回顾下查看python版本号的操作:命令行输入python前提是已经将python安装路径加入了系统环境变量,配置正确就会出现以下相应的版本号。

查看是否安装PyMySQL:pip list,如果有就不用安装,否则需要安装PyMySQL。

安装PyMySQL,用pip安装:pip install PyMySQL

查询找到PyMySQL,说明安装好了。

操作数据一般步骤是:

  1. 连接数据库 pymysql.connect(host = 'localhost',user = 'root',passwd ='xxxxxxxxx',db = 'fbl' )
  2. 创建游标 cursor = db.cursor()
  3. 执行sql命令 # cursor.execute(Mysql cmd)
  4. 提交 db.commit()
  5. 关闭数据库db.close()
#!/usr/bin/env python3
#coding:utf-8
import pymysql

# 打开数据库连接
db = pymysql.connect(host = 'localhost',user = 'root',passwd ='xxxxxxxxx',db = 'fbl' )

# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()

# 使用 execute() 方法执行 SQL 查询 
# cursor.execute("SELECT VERSION()")
cmd_list = []
cmd_list.append('show tables;')
cmd_list.append('insert into hunpo(title,url) values("adfsf","qml");')
cmd_list.append('insert into hunpo(title,url) values("qml","fbl");')

cmd_list.append('select * from hunpo;')
for cmd in cmd_list:
 cursor.execute(cmd)
 data = cursor.fetchone()
 print(data)
#提交数据
db.commit()
# 关闭数据库连接
db.close()

 

后面将会讲解如何通过爬虫将爬取到的链接报存到数据库

以上所述是小编给大家介绍的python3对接mysql数据库详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

python使用rsa非对称加密过程解析

python使用rsa非对称加密过程解析

这篇文章主要介绍了python使用rsa非对称加密过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1、安装rsa 支持pyth...

用python打印1~20的整数实例讲解

用python打印1~20的整数实例讲解

while语句打印1-20的整数,并且每行打印五个数,为了实现每行5个数,我们使用一个if判断语句来实现,判断当打印出5个数之后,自动换行打印出来,直至完全输出来。希望对正在学习pyth...

Python使用itchat模块实现简单的微信控制电脑功能示例

本文实例讲述了Python使用itchat模块实现简单的微信控制电脑功能。分享给大家供大家参考,具体如下: #!/usr/bin/python #coding=UTF-8 impor...

用Python的SimPy库简化复杂的编程模型的介绍

在我遇到 SimPy 包的其中一位创始人 Klaus Miller 时,从他那里知道了这个包。Miller 博士阅读过几篇提出使用 Python 2.2+ 生成器实现半协同例程和“轻便”...

Python实现模拟登录及表单提交的方法

本文实例讲述了Python实现模拟登录及表单提交的方法。分享给大家供大家参考。具体实现方法如下: # -*- coding: utf-8 -*- import re import...