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的Django框架中设置日期和字段可选的方法
Jul 17 Python
完美解决Python2操作中文名文件乱码的问题
Jan 04 Python
Python使用re模块实现信息筛选的方法
Apr 29 Python
python爬虫实现中英翻译词典
Jun 25 Python
django最快程序开发流程详解
Jul 19 Python
python使用正则来处理各种匹配问题
Dec 22 Python
基于python SMTP实现自动发送邮件教程解析
Jun 02 Python
浅谈Python中的生成器和迭代器
Jun 19 Python
利用python制作拼图小游戏的全过程
Dec 04 Python
Python的轻量级ORM框架peewee使用教程
Feb 05 Python
python使用torch随机初始化参数
Mar 22 Python
python中redis包操作数据库的教程
Apr 19 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中time()和mktime()方法的区别
2013/09/28 PHP
PHP小教程之实现链表
2014/06/09 PHP
PHP程序员的技术成长规划
2016/03/25 PHP
thinkPHP框架实现的简单计算器示例
2018/12/07 PHP
拖动一个HTML元素
2006/12/22 Javascript
JavaScript 继承详解(二)
2009/07/13 Javascript
Google 静态地图API实现代码
2010/11/19 Javascript
jQuery.Validate验证库的使用介绍
2013/04/26 Javascript
node.js下when.js 的异步编程实践
2014/12/03 Javascript
纯JavaScript基于notie.js插件实现消息提示特效
2016/01/18 Javascript
浅谈Angular的$q, defer, promise
2016/12/20 Javascript
Angular限制input框输入金额(是小数的话只保留两位小数点)
2017/07/13 Javascript
去掉vue 中的代码规范检测两种方法(Eslint验证)
2018/03/21 Javascript
详解JavaScript中的数组合并方法和对象合并方法
2018/05/11 Javascript
vue完成项目后,打包成静态文件的方法
2018/09/03 Javascript
使用angular-cli webpack创建多个包的方法
2018/10/16 Javascript
JQuery属性操作与循环用法示例
2019/05/15 jQuery
解决VUE项目localhost端口服务器拒绝连接,只能用127.0.0.1的问题
2020/08/14 Javascript
python简单判断序列是否为空的方法
2015/06/30 Python
利用python 更新ssh 远程代码 操作远程服务器的实现代码
2018/02/08 Python
pytorch 把MNIST数据集转换成图片和txt的方法
2018/05/20 Python
Django实现表单验证
2018/09/08 Python
对pytorch网络层结构的数组化详解
2018/12/08 Python
python scp 批量同步文件的实现方法
2019/01/03 Python
Python rabbitMQ如何实现生产消费者模式
2020/08/24 Python
美国批发零售网站:GearXS
2016/07/26 全球购物
美国最大的网络男装服装品牌:Bonobos
2017/05/25 全球购物
印度网上药店:1mg
2017/10/13 全球购物
Farfetch中文官网:奢侈品牌时尚购物平台
2020/03/15 全球购物
企划主管岗位职责
2013/12/12 职场文书
军神教学反思
2014/02/04 职场文书
村干部四风问题整改措施
2014/09/30 职场文书
2015新年寄语大全
2014/12/08 职场文书
护士先进个人总结
2015/02/13 职场文书
初中教务主任竞聘演讲稿(范文)
2019/08/20 职场文书
python DataFrame中stack()方法、unstack()方法和pivot()方法浅析
2022/04/06 Python