【Python】使用python操作mysql数据库
这是我之前使用mysql时用到的一些库及开发的工具,这里记录下,也方便我查阅。
python版本: 2.7.13
mysql版本: 5.5.36
几个python库
1、mysql-connector-python
是MySQL官方的Python驱动
https://dev.mysql.com/doc/connector-python/en/
安装:
pip install mysql-connector
示例代码:
2、MySQL-python
是封装了MySQL C驱动的Python驱动。
安装:
pip install MySQL
CentOS下:yum install MySQL-python
示例代码:
https://github.com/mike-zhang/pyExamples/blob/master/databaseRelate/mysqlOpt/MySQLdb_Opt/test1.py
3、pymysql
纯python实现的mysql库
安装:
pip install PyMySQL
示例代码:
https://github.com/mike-zhang/pyExamples/blob/master/databaseRelate/mysqlOpt/pymysql_Opt/test1.py
几个工具
以下几个工具均使用MySQL-python库开发,需要提前安装该库。
1、将mysql表中的数据备份到csv文件
mysqldump可以备份数据,但备份的是sql语句,有时候需要将单笔或多表备份为csv文件时,该工具适用。
原理:
分页获取数据并将数据写入到csv文件
源码地址:
2、从csv文件导入数据到mysql表
和数据导出对应,带有表头的csv文件需要导入数据库时,该工具适用。
原理:
读取csv文件并生成sql语句,批量提交语句入库。
源码地址:
3、从sql文件导入数据到mysql表
导出的sql文件需要恢复时,如果文件过大,会出现等待时间很长的问题,在这段时间内数据无法查看,如果要解决这个问题,该工具适用。
原理:
读取sql语句,分批次提交(默认10000条提交一次)
源码地址:
4、获取建表语句
有批量获取mysql建表语句的需求,该工具适用。
原理:
通过 show tables 获取数据库中的表名称列表,然后通过 show create table 获取建表语句。
源码地址:
5、获取表字段名称
有获取表字段名的需求,该工具适用。
原理:
通过 desc 命令获取表字段信息
源码地址:
6、分页测试
数据过多,需要分页获取时,该代码适用。
原理:
通过limit实现
源码地址:
7、批量清理表内容
需要批量清理表的内容时,该代码适用。
原理:
通过脚本执行多条删除语句。
源码地址:
好,就这些了,希望对你有帮助。
本文github地址:
https://github.com/mike-zhang/mikeBlogEssays/blob/master/2017/20170703_使用python操作mysql数据库.rst
欢迎补充
【Python】使用python操作mysql数据库的更多相关文章
- Python使用DB-API操作MySQL数据库
Python提供了一个标准数据库API,称为DB-API,用于处理基于SQL的数据库.与任何底层数据库的交互都可以使用DB-API,因为DB-API在代码与驱动程序之间提供了一个抽象层,可以根据需要替 ...
- python开发_python操作mysql数据库
如果你还没有准备好开发环境,你不妨花上一小点时间去看看:python开发_mysqldb安装 本篇blog是有关python操作mysql数据的相关内容. 我做了一个demo: 先看运行效果: mys ...
- python web.py操作mysql数据库,实现对数据库的增删改查操作
使用web.py框架,实现对mysql数据库的增删改查操作: 该示例代码中连接的是本地数据库testdb,user表,表结构比较简单,只有两个字段:mobile和passwd,类型均为字符型 实际应用 ...
- python 2.7 操作mysql数据库 实例
create table msg(id int primary key auto_increment,title varchar(20),name varchar(60),content varcha ...
- python使用pymysql操作mysql数据库
1.安装pymysql pip install pymysql 2.数据库查询示例 import pymysql # 连接database conn =pymysql.connect(user=' , ...
- 【Python】Windows平台下Python、Pydev连接Mysql数据库
Mysql数据库是跨平台的,不是说Python一定就要连接Mongodb. Python连接Mysql数据库是非常easy的. 首先,你要配置好Python的开发环境,详见<[Python]Wi ...
- [Python] 学习笔记之MySQL数据库操作
1 Python标准数据库接口DB-API介绍 Python标准数据库接口为 Python DB-API,它为开发人员提供了数据库应用编程接口.Python DB-API支持很多种的数据库,你可以选择 ...
- python操作mysql数据库的相关操作实例
python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...
- python【第十二篇下】操作MySQL数据库以及ORM之 sqlalchemy
内容一览: 1.Python操作MySQL数据库 2.ORM sqlalchemy学习 1.Python操作MySQL数据库 2. ORM sqlachemy 2.1 ORM简介 对象关系映射(英语: ...
- Windows下安装MySQLdb, Python操作MySQL数据库的增删改查
这里的前提是windows上已经安装了MySQL数据库,且配置完成,能正常建表能操作. 在此基础上仅仅需安装MySQL-python-1.2.4b4.win32-py2.7.exe就ok了.仅仅有1M ...
随机推荐
- 安装QConf 报错及解决方案
1:提示找不到gdbm.h头文件 /alidata/QConf/agent/qconf_dump.cc:1:18: fatal error: gdbm.h: No such file or direc ...
- 菜鸟vimer成长记——第2.1章、normal模式
目的 掌握normal模式下常用操作的语法和概念,这些操作对应的应用场景以及实用技巧. 通过normal模式举一反三掌握cmd-line和visual的常用文本操作. 简介 文本操作的理想状态为:一个 ...
- Flutter - Error: 'xxx' is imported from both package...
Compiler message: lib/main.dart:77:32: Error: 'Toast' is imported from both 'package:easy_alert/src/ ...
- How to create a custom action type with a custom control (BarCheckItem), associated with it
https://www.devexpress.com/Support/Center/Example/Details/E1977/how-to-create-a-custom-action-type-w ...
- 并发系列(三)-----volatile
一 简介 volatile关键字是轻量级的synchronized,volatile在并发编程中保证共享变量的可见性,当一个线程修改被volatile修饰的共享变量时,另外一个线程就能读到这个修改的值 ...
- Eclipse Photon没有Server选项的问题
安装Eclipse Photon版本的时候选择了Java开发,导致最后需要本地tomcat调试的时候找不到Server配置选项. ①在软件eclipse下的Help->InstallNew So ...
- C# 通过copydata实现进程间通信
最近公司需要实现一个基于copydata进程间通信的功能.原来一直没有接触过Windows的进程通信,这次正好可以学习一下. 程序是基于Winform的,下面直接上代码. 公共类: public cl ...
- django1.11入门
快速安装指南¶ 在使用Django之前,您需要安装它.我们有 完整的安装指南,涵盖所有可能性; 本指南将指导您进行简单,最小化的安装,在您完成介绍时可以正常工作. 安装Python¶ 作为一个Pyth ...
- 三羊献瑞:dfs / next_permutation()
三羊献瑞 观察下面的加法算式: 祥 瑞 生 辉 + 三 羊 献 瑞------------------- 三 羊 生 瑞 气 (如果有对齐问题,可以参看[图1.jpg]) 其中,相同的汉字代 ...
- 程序设计 之 C#实现《拼图游戏》 (上)代码篇
原理详解请参考博客中 拼图游戏(下)原理篇 http://www.cnblogs.com/labixiaohei/p/6713761.html 功能描述: 1.用户自定义上传图片 2.游戏难度选择:简 ...