Python基于DB-API操作MySQL数据库过程解析


Posted in Python onApril 23, 2020

Python提供了一个标准数据库API,称为DB-API,用于处理基于SQL的数据库。

与任何底层数据库的交互都可以使用DB-API,因为DB-API在代码与驱动程序之间提供了一个抽象层,可以根据需要替换底层数据库,而无需丢弃现有的代码。

DB-API与底层数据库交互示例:

①代码 ⇆ ②使用DB-API ⇆ ③数据库驱动程序 ⇆ ④底层数据库(如MySQL等)

使用DB-API操作MySQL数据库例子

1、Windows安装MySQL数据库驱动程序MySQL-Connector/Python

访问MySQL-Connector/Python官网地址:https://dev.mysql.com/downloads/connector/python/

从Select Operating System的下拉选项中选择“Platform Independent”后,点击第二个的ZIP下载按钮,如下图:

Python基于DB-API操作MySQL数据库过程解析

下载下来mysql-connector-python-8.0.16.zip,解压,以管理员身份运行命令提示符窗口,进入解压后目录,
执行命令安装:py -3 setup.py install

2、操作数据库例子:往表中插入数据、查询数据

import mysql.connector

dbconfig = {'host':'127.0.0.1',
      'user':'root',
      'password':'',
      'database':'testdb',}

#建立连接
conn = mysql.connector.connect(**dbconfig)

#创建一个游标向服务器发送命令及接收结果
cursor = conn.cursor()


_SQL = """insert into user(name,age)
    values(%s,%s)"""
cursor.execute(_SQL, ('张三',22))

#强制提交
conn.commit()

_SQL = """select * from user"""

cursor.execute(_SQL)

#游标有3个方法可以请求结果
#cursor.fetchone 获取一行结果
#cursor.fetmany 获取指定的任意行结果
#cursor.fetchall 获取所有结果
for row in cursor.fetchall():
  print(row)

#关闭游标和连接
cursor.close()
conn.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python基础教程之类class定义使用方法
Feb 20 Python
使用Python中的greenlet包实现并发编程的入门教程
Apr 16 Python
python对数组进行反转的方法
May 20 Python
书单|人生苦短,你还不用python!
Dec 29 Python
python特性语法之遍历、公共方法、引用
Aug 08 Python
Python使用Selenium爬取淘宝异步加载的数据方法
Dec 17 Python
Python中的asyncio代码详解
Jun 10 Python
python 通过视频url获取视频的宽高方式
Dec 10 Python
浅谈tensorflow中张量的提取值和赋值
Jan 19 Python
Python必须了解的35个关键词
Jul 16 Python
Python实现信息轰炸工具(再也不怕说不过别人了)
Jun 11 Python
Python如何利用pandas读取csv数据并绘图
Jul 07 Python
详解pandas绘制矩阵散点图(scatter_matrix)的方法
Apr 23 #Python
Python matplotlib实时画图案例
Apr 23 #Python
windows下的pycharm安装及其设置中文菜单
Apr 23 #Python
使用python+poco+夜神模拟器进行自动化测试实例
Apr 23 #Python
PyCharm设置Ipython交互环境和宏快捷键进行数据分析图文详解
Apr 23 #Python
python+adb命令实现自动刷视频脚本案例
Apr 23 #Python
python+adb+monkey实现Rom稳定性测试详解
Apr 23 #Python
You might like
PHP中实现汉字转区位码应用源码实例解析
2010/06/14 PHP
解析关于java,php以及html的所有文件编码与乱码的处理方法汇总
2013/06/24 PHP
Yii实现单用户博客系统文章详情页插入评论表单的方法
2015/12/28 PHP
javascript下过滤数组重复值的代码
2007/09/10 Javascript
javascript使用isNaN()函数判断变量是否为数字
2013/09/21 Javascript
原生javascript实现隔行换色
2015/01/04 Javascript
javascript的 {} 语句块详解
2016/02/27 Javascript
简单实现jQuery进度条轮播实例代码
2016/06/20 Javascript
js数组操作方法总结(必看篇)
2016/11/22 Javascript
微信小程序之多文件下载的简单封装示例
2018/01/29 Javascript
用npm安装vue和vue-cli,并使用webpack创建项目的方法
2018/09/28 Javascript
H5+C3+JS实现五子棋游戏(AI篇)
2020/05/28 Javascript
node.js爬取中关村的在线电瓶车信息
2018/11/13 Javascript
基于javascript实现碰撞检测
2020/03/12 Javascript
Jquery使用each函数实现遍历及数组处理
2020/07/14 jQuery
vue实现移动端项目多行文本溢出省略
2020/07/29 Javascript
javascript中正则表达式语法详解
2020/08/07 Javascript
[02:36]DOTA2上海特锦赛 回忆电竞生涯的重要瞬间
2016/03/25 DOTA
[02:49]DOTA2完美大师赛首日观众采访
2017/11/23 DOTA
python网络爬虫采集联想词示例
2014/02/11 Python
python实现的AES双向对称加密解密与用法分析
2017/05/02 Python
Python Flask-web表单使用详解
2017/11/18 Python
python如何实现内容写在图片上
2018/03/23 Python
python检索特定内容的文本文件实例
2018/06/05 Python
python实现将中文日期转换为数字日期
2020/07/14 Python
Python configparser模块封装及构造配置文件
2020/08/07 Python
python 如何在测试中使用 Mock
2021/03/01 Python
使用CSS3的font-face字体嵌入样式的方法讲解
2016/05/13 HTML / CSS
HTML5 Canvas中使用路径描画二阶、三阶贝塞尔曲线
2015/01/01 HTML / CSS
FC-Moto丹麦:欧洲最大的摩托车服装和头盔商店之一
2019/08/20 全球购物
军训鉴定表自我鉴定
2014/02/13 职场文书
《爱如茉莉》教后反思
2014/04/12 职场文书
三严三实心得体会范文
2014/10/13 职场文书
资金申请报告范文
2015/05/14 职场文书
JavaScript如何优化逻辑判断代码详解
2021/06/08 Javascript
聊聊配置 Nginx 访问与错误日志的问题
2022/05/25 Servers