基本概念

PyMySQL:PyMySQL是封装了MySQL驱动的Python驱动,一个能使Python连接到MySQL的库。

mysql-connector-python(MySQL Connector/Python):MySQL官方的纯Python驱动。因为是纯Python开发的。效率不高。

mysqlclient: MySQLdb的分支。增加了对Python 3的支持和错误修复。我希望此Fork(分支)可以像分发一样被合并回MySQLdb,也可以像分发一样被合并回setuptools。

MySQLdb:又称:MySQL-python,MySQLdb 是用于Python链接Mysql数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API 上建立的。Python 连接 MySQL 最流行的一个驱动,很多框架都也是基于此库进行开发,遗憾的是它只支持 Python2.x,而且安装的时候有很多前置条件,因为它是基于C开发的库,在 Windows 平台安装非常不友好,经常出现失败的情况,现在基本不推荐使用,取代的是它的衍生版本。

官方文档

https://www.python.org/dev/peps/pep-0249/#connection-objects

解决方案

方法一:使用PyMySQL库连接MySQL数据库

import pymysql#连接数据库
conn=pymysql.connect(host = '127.0.0.1' # 连接名称,默认127.0.0.1 ,user = 'root' # 用户名,passwd='password' # 密码,port= 3306 # 端口,默认为3306,db='test' # 数据库名称,charset='utf8' # 字符编码)
cur = conn.cursor() # 生成游标对象
sql="select * from `student` " # SQL语句
cur.execute(sql) # 执行SQL语句
data = cur.fetchall() # 通过
fetchall方法获得数据
for i in data[:2]: # 打印输出前2条数据print (i)
cur.close() # 关闭游标
conn.close() # 关闭连接

方法二:使用mysql.connector库连接MySQL数据库

import mysql.connector
conn=mysql.connector.connect(host = '127.0.0.1' # 连接名称,默认127.0.0.1 ,user = 'root' # 用户名,passwd='password' # 密码,port= 3306 # 端口,默认为3306,db='test' # 数据库名称,charset='utf8' # 字符编码)
cur = conn.cursor() # 生成游标对象
sql="select * from `student` " # SQL语句
cur.execute(sql) # 执行SQL语句
data = cur.fetchall() # 通过fetchall方法获得数据
for i in data[:2]: # 打印输出前2条数据print (i)
cur.close() # 关闭游标
conn.close() # 关闭连接

方法三:使用mysqlclient库连接MySQL数据库

#coding=utf-8
import MySQLdb
#connect() 方法用于创建数据库的连接,里面可以指定参数:用户名,密码,主机等信息。
#这只是连接到了数据库,要想操作数据库需要创建游标。
conn= MySQLdb.connect(host='localhost',port = 3306,user='root',passwd='123456',db ='test',)#通过获取到的数据库连接conn下的cursor()方法来创建游标。
cur = conn.cursor()
#创建数据表,通过游标cur 操作execute()方法可以写入纯sql语句。通过execute()方法中写如sql语句来对数据进行操作
cur.execute("create table student(id int ,name varchar(20),class varchar(30),age varchar(10))")
#插入一条数据
cur.execute("insert into student values('2','Tom','3 year 2 class','9')")
#修改查询条件的数据
cur.execute("update student set class='3 year 1 class' where name = 'Tom'")
#删除查询条件的数据
cur.execute("delete from student where age='9'")
#cur.close() 关闭游标
cur.close()
#conn.commit()方法在提交事物,在向数据库插入一条数据时必须要有这个方法,否则数据不会被真正的插入。
conn.commit()
#conn.close()关闭数据库连接
conn.close()

方法四:使用MySQLdb库连接MySQL数据库

import MySQLdb
# 打开数据库连接
db = MySQLdb.connect("localhost", "testuser", "test123", "TESTDB", charset='utf8' )
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# 使用execute方法执行SQL语句
cursor.execute("SELECT VERSION()")
# 使用 fetchone() 方法获取一条数据
data = cursor.fetchone()
print "Database version : %s " % data
# 关闭数据库连接
db.close()

参考文章

https://baijiahao.baidu.com/s?id=1642463236846856193&wfr=spider&for=pc

https://www.runoob.com/python/python-mysql.html

https://www.cnblogs.com/chongdongxiaoyu/p/8951433.html

Python——Python连接MySQL数据库相关推荐

  1. python:实现连接mysql数据库(附完整源码)

    python:实现连接mysql数据库 可以使用Python的mysql-connector库实现连接MySQL数据库.以下是一个简单的源代码示例: import mysql.connector# 连 ...

  2. python Django 连接mysql数据库创建表详细全过程

    python Django 连接mysql数据库创建表详细全过程 1,在数据库中新建一个要连接的数据库(在cmd命令行里登录数据库进行创建创建) mysql -u root -p**+密码** cre ...

  3. python远程连接mysql数据库_python远程连接MySQL数据库

    python远程连接MySQL数据库 本文实例为大家分享了python远程连接MySQL数据库的具体代码,供大家参考,具体内容如下 连接数据库 这里默认大家都已经配置安装好 MySQL 和 Pytho ...

  4. python怎么连接mysql数据库_python如何连接mysql数据库

    Python 数据库接口支持非常多的数据库,你可以选择适合你项目的数据库:GadFly mSQL MySQL PostgreSQL Microsoft SQL Server 2000 Informix ...

  5. python如何连接mysql数据库

    先花点时间来说说一个程序怎么和数据库进行交互 1.和数据库建立连接 2.执行sql语句,接收返回值 3.关闭数据库连接 使用MySQLdb也要遵循上面的几步.让我们一步步的进行. 1.MySQL数据库 ...

  6. 使用Python pymysql连接Mysql数据库-菜鸟教程

    1.安装pymysql模块 pip install pymysql 2.启动Mysql数据库服务 net start mysql80 3.连接数据库 import pymysql# 打开数据库连接 d ...

  7. Python实现连接Mysql数据库实现增删改查

    1.查看已安装的Python驱动 在windows的dos窗口中输入pip list查询已安装的Python驱动. 2.如未安装,进行下载Python的PyMySQL驱动 在windows的dos窗口 ...

  8. python 长连接 mysql数据库

    python 长连接数据库 python链接mysql中没有长链接的概念,但我们可以利用mysql的ping机制,来实现长链接功能 思路: 1 python mysql 的cping 函数会校验链接的 ...

  9. python之连接MySQL数据库的简易界面编程(连接数据库+模块搭建+界面搭建+功能完成+效果演示)

    目录 一,连接数据库 下载pymysql软件包的三种方式 方式一 方式二 方式三 新建util包和DBUtil类,完整代码如下 二,模块搭建 建立实体类book 三,界面搭建 新建main包GUI文件 ...

  10. Python,连接mysql数据库

    import pymysqldef sqldb_opt():# sql数据库访问基本配置config = {'host': 'sql数据库的ip地址','port': 3306,'user': '你的 ...

最新文章

  1. python 二进制流转图片_Python零基础入门到精通-5.1节:Python程序的执行过程
  2. Python 连接Sql Server数据库 MSSql
  3. HttpClient basic authentication
  4. Android之NDK开发学习总结
  5. STL源码剖析(四)
  6. 【MFC】CWinApp类详解
  7. 是什么时候开始学习gulp了
  8. java官网门户源码 SSM框架 自适应-响应式 freemarker 静态模版引擎
  9. bzoj4820 [Sdoi2017]硬币游戏 高斯消元+概率+kmp
  10. Alley Bird 跳跳鸟源码
  11. 基于springboot+vue的旅游信息(旅游线路)网站(前后端分离)
  12. PeakDo毫米波无线投屏器,你的无线图传神器
  13. CodeSmith 简单使用和常用模板
  14. android setting 开发者模式,Android 设置 Setting ---开发者选项 中选项为默认配置
  15. Typec接口颜色代表什么?
  16. 周总结2022.1.10-2022.1.16
  17. 倩女幽魂次世代服务器为什么维护,8月22日停服维护公告--《倩女幽魂》手游2.0次世代全新起点...
  18. 山东大学计算机考博难度,我的四个考博面试经历:人大,山大,华科,华理工...
  19. 艺术二维码生成神器!
  20. 【电脑运用及修理】Google Chrome 浏览器

热门文章

  1. SQL 2005各版本的区别
  2. 浅谈JavaScript中的事件
  3. QueryBuildRange中的表达式
  4. 事务连接中断_HTTP长连接和短连接
  5. 打印机可以打印不能扫描怎么弄_为什么打印机可以通过电脑打印可不能扫描呢...
  6. vue中进度条写法_vue组件实现进度条效果
  7. tf model create
  8. mysql的FIQ怎么安装_MySQL数据库设计总结
  9. matlab中if语句多个_科学计算 | MATLAB程序设计基础
  10. python多线程怎么写日志_Python日志记录在多进程下的使用