基于Python下MySQL数据库驱动
由于MySQL服务器以独立的进程运行,并通过网络对外服务,所以,需要支持Python的MySQL驱动来连接到MySQL服务器。
1.mysql-connector-python
mysql-connector-python是MySQL官方提供的驱动。
安装:
pip3 install mysql-connector使用:
2.1 创建数据库连接,执行SQL查询数据;
import mysql.connector # 创建数据库连接配置
config = {
"host":"rm-a.mysql.rds.aliyuncs.com",
"port":3306,
"user":"root",
"password":"psw",
"db":"examin_prod",
"charset":"utf8"} def getExaminReportMCY(agency_id='123456789', examin_date='2021-04-01'):
'''
mysql-connector-python
'''
# 创建数据库连接
conn = mysql.connector.connect(**config)
# 得到一个可以执行SQL语句的游标对象
cursor = conn.cursor(dictionary=True)
# 使用 execute() 方法执行 SQL 查询
# format_map 格式化字符串拼接SQL参数
cursor.execute(SQL_EXAMIN_REPORT.format_map({"agency_id": agency_id, "examin_date": examin_date}))
# 使用 fetchall() 方法获取所有数据
data = cursor.fetchall()
# 关闭游标
cursor.close()
# 关闭数据库连接
conn.close() return data # SQL
SQL_EXAMIN_REPORT = '''SELECT
ther.id,
FROM
t_health_examin_record
WHERE
agency_id = '{agency_id}' AND examin_date = '{examin_date} 00:00:00'
'''
2.pymysql
pymsql是Python中用于连接 MySQL 服务器的一个库,目前pymysql支持python3.x。
安装:
pip3 install pymysql使用:
2.1 创建数据库连接,执行SQL查询数据;
import pymysql def getExaminReport(agency_id='123456789', examin_date='2021-04-01'):
# 创建数据库连接
conn = pymysql.connect(host='rm-a.mysql.rds.aliyuncs.com',
port=3306,
user='root',
password='psw',
db='examin_prod',
charset='utf8') # 创建游标对象,得到一个可以执行SQL语句的游标对象
#cursor = conn.cursor() # 执行完毕返回的结果集默认以元组显示
# 使用 cursor(cursor=pymysql.cursors.DictCursor) 方法创建一个可以执行SQL语句并且将结果作为字典返回的游标
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor) # 使用 execute() 方法执行 SQL 查询
# format_map 格式化字符串拼接SQL参数
cursor.execute(SQL_EXAMIN_REPORT.format_map({"agency_id": agency_id, "examin_date": examin_date}))
# 使用 fetchall() 方法获取所有数据
data = cursor.fetchall() # 关闭游标
cursor.close()
# 关闭数据库连接
conn.close() return data # SQL
SQL_EXAMIN_REPORT = '''SELECT
ther.id,
FROM
t_health_examin_record
WHERE
agency_id = '{agency_id}' AND examin_date = '{examin_date} 00:00:00'
'''
基于Python下MySQL数据库驱动的更多相关文章
- Windows下安装MySQLdb, Python操作MySQL数据库的增删改查
这里的前提是windows上已经安装了MySQL数据库,且配置完成,能正常建表能操作. 在此基础上仅仅需安装MySQL-python-1.2.4b4.win32-py2.7.exe就ok了.仅仅有1M ...
- python使用mysql数据库
一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可. Linux 下的安装可能会更加简单,除了下载安装包进行安装外,一般的l ...
- 使用python操作mysql数据库
这是我之前使用mysql时用到的一些库及开发的工具,这里记录下,也方便我查阅. python版本: 2.7.13 mysql版本: 5.5.36 几个python库 1.mysql-connector ...
- python专题-Mysql数据库(python3._+ PyMysql)
之前写过一篇 Python使用MySQL数据库的博客,主要使用的是Python2和MySQLdb驱动. python使用mysql数据库 Python2 ---> Python3 MySQLdb ...
- python专题-Mysql数据库(python2._+ Mysqldb)
Python使用MySQL数据库 MySQLdb驱动从2014年1月停止了维护. Python2 MySQLdb 一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安 ...
- Python使用MySQL数据库(新)
之前写过一篇 Python使用MySQL数据库的博客,主要使用的是Python2和MySQLdb驱动. python使用mysql数据库 然而,2016年开始,我从Python2切换到了Python3 ...
- Python连接MySQL数据库的多种方式
上篇文章分享了windows下载mysql5.7压缩包配置安装mysql 后续可以选择 ①在本地创建一个数据库,使用navicat工具导出远程测试服务器的数据库至本地,用于学习操作,且不影响测试服务器 ...
- Python 基于Python从mysql表读取千万数据实践
基于Python 从mysql表读取千万数据实践 by:授客 QQ:1033553122 场景: 有以下两个表,两者都有一个表字段,名为waybill_no,我们需要从tl_waybill_b ...
- Python使用MySQL数据库【转】
转自 Python使用MySQL数据库(新)[很详细][fetchall和fetchmany有啥区别呢?] - CSDN博客https://blog.csdn.net/u011350541/artic ...
- Python使用MySQL数据库(新)(转)
http://www.cnblogs.com/fnng/p/3565912.html 一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步 ...
随机推荐
- React: 动态添加样式
问题背景 在软件开发过程中,经常会出现动态添加style或className,比如:同一个表格组件在A处调用,需要固定前四列数据, B处调用则不用,那这时候,动态添加元素就派上了用场. 解决方案 如下 ...
- Mapbox Style 规范
https://my.oschina.net/u/3185947/blog/4819218
- centos7离线安装harbor
前言 harbor是一个docker私有仓库,基于docker官方的registry,提供GUI.权限控制.项目管理等功能. 安装harbor前,需要先安装docker和docker-compose ...
- centos7升级内核到最新稳定版
前言 centos7默认的内核版本才3.10,诸如VXLAN.eBPF等特性无法体验,因此需要升级.目前(2022.02)Linux的内核版本已更新到5.16. 步骤 更新仓库 yum update ...
- 使用在线Excel时,有哪些方法可以引入计算函数?
摘要:本文由葡萄城技术团队于博客园原创并首发.转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 前言 在日常生活和工作中,我们都会或多或少的使用Excel中的 ...
- 【故障公告】一而再,再而三,三翻四复:数据库服务器 CPU 100%
会员救园,故障捣乱,每当困难时,故障们总是喜欢雪上加霜过来考验你. 今天下班前 17:43~17:47 期间,园子的 SQL Server 数据库服务器突然出现 CPU 100% 问题. 发现问题后, ...
- Python操作Redis大全
一.字符串 string Python操作Redis的redis模块对字符串(string)的主要操作函数包括:SET.GET.GETSET.SETEX.SETNX.MSET.MSETNX.INCR( ...
- 使用 Sealos 在离线环境中光速安装 K8s 集群
作者:尹珉.Sealos 开源社区 Ambassador,云原生爱好者. 当容器化交付遇上离线环境 在当今快节奏的软件交付环境中,容器化交付已经成为许多企业选择的首选技术手段.在可以访问公网的环境下, ...
- JSTL常用代码总结
1. jstl判空: (1) 须先引人<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix=" ...
- .NET Core 实现Excel的导入导出
目录 前言 NPOI简介 一.安装相对应的程序包 1.1.在 "管理NuGet程序包" 中的浏览搜索:"NPOI" 二.新建Excel帮助类 三.调用 3.1. ...