【数据驱动】python之mysql的操作
1、准备工作
在本篇中,我们使用python版本为python3.7。在python3中,连接mysql数据库我们需要使用pymysql这个第三方库。我们可以直接使用pip命令来安装,安装的命令为:
pip install PyMySQL
如果在你的环境中同时存在python2和python3两个版本,那么我们需要安装python3版本的时候就可以使用
pip3 install PyMySQL
2、连接数据库
在做好准备工作后,我们就可以开始使用pymysql这个第三方库进行连接mysql了
import pymysql '''连接数据库,我们直接调用connect这个函数,需要在该函数中传入数据库的连接信息,如
数据库的IP地址、账号、密码和数据库的名称'''
conn = pymysql.connect(host='127.0.0.1', user='root', passwd='', db='test')
2.1 python连接mysql后执行插入语句
import pymysql '''连接数据库,我们直接调用connect这个函数,需要在该函数中传入数据库的连接信息,如
数据库的IP地址、账号、密码和数据库的名称'''
def connMysql():
try:
conn = pymysql.connect(host='127.0.0.1', user='root', passwd='', db='test')
return conn
except:
return '连接失败' '''操作mysql往数据库中插入一条数据'''
def insertOne():
'''在成功连接mysql之后,我们需要建立一个游标,只有建立成功了游标,才可以对mysql进行操作'''
conn = connMysql()
cur = conn.cursor()
sql = 'INSERT INTO tab_user VALUES (%s, %s)'
params = (1, 'admin')
'''使用excute函数将需要查询的sql和变量传入'''
cur.execute(sql, params)
conn.commit()
'''在操作完数据库之后,我们需要关闭游标和连接对象,否则连接池会被占满'''
cur.close()
conn.close() '''操作mysql插入多条数据'''
def insertMany():
conn = connMysql()
cur = conn.cursor()
sql = 'INSERT INTO tab_user VALUES (%s, %s)'
params = [(2, '张三'), (3, '李四')]
'''使用executemany函数将需要查询的sql和变量传入'''
cur.executemany(sql, params)
conn.commit()
'''在操作完数据库之后,我们需要关闭游标和连接对象,否则连接池会被占满'''
cur.close()
conn.close()
2.2 python连接mysql后执行查询语句
import pymysql '''连接数据库,我们直接调用connect这个函数,需要在该函数中传入数据库的连接信息,如
数据库的IP地址、账号、密码和数据库的名称'''
def connMysql():
try:
#conn = pymysql.connect(host='127.0.0.1', user='root', passwd='123456', db='test')
conn = pymysql.connect(host='10.66.132.42', user='cdb_outerroot', passwd='@09ui%sbc09', db='gic_marketing')
return conn
except:
return '连接失败' '''查询一条数据'''
def get_one():
conn = connMysql()
cur = conn.cursor()
sql = "SELECT * FROM tab_user WHERE id = %s"
params = (2,)
cur.execute(sql, params)
'''查询只有一条数据的时候使用fetchone()'''
result = cur.fetchone()
cur.close()
conn.close()
return result '''查询所有数据'''
def get_All():
conn = connMysql()
cur = conn.cursor()
sql = "SELECT * FROM tab_gic_coup_card"
cur.execute(sql)
'''需要查询所有数据的时候应该使用fetchall()'''
result = cur.fetchall()
#db = [item for item in result]
cur.close()
conn.close()
return result '''查询部分数据'''
def get_Many():
conn = connMysql()
cur = conn.cursor()
sql = "SELECT * FROM tab_gic_coup_card WHERE card_name like %s"
params = ('%测试')
cur.execute(sql)
'''fetchmany()需要传入变量来确定查询几条数据,如果不传入则默认只查询一条'''
result = cur.fetchmany(2)
'''列表推倒式,在这里就不做说明,也可以不使用列表推倒式,直接return result'''
db = [item for item in result]
cur.close()
conn.close()
return db
修改和删除就不在此说明,可参考“2.1 python连接mysql后执行插入语句“的代码
【数据驱动】python之mysql的操作的更多相关文章
- python对mysql数据库操作的三种不同方式
首先要说一下,在这个暑期如果没有什么特殊情况,我打算用python尝试写一个考试系统,希望能在下学期的python课程实际使用,并且尽量在此之前把用到的相关技术都以分篇博客的方式分享出来,有想要交流的 ...
- Python 3 mysql 库操作
Python 3 mysql 库操作 一.基础相关知识 MySQL数据库基本操作知识储备 数据库服务器:一台计算机(对内存要求比较高) 数据库管理系统:如mysql,是一个软件 数据库:oldboy_ ...
- Python 3 mysql 表操作
Python 3 mysql 表操作 表相当于文件,表中的一条记录就相当于文件的一行内容,不同的是,表中的一条记录有对应的标题,称为表的字段 id,name,qq,age称为字段,其余的,一行内容称为 ...
- Python进行MySQL数据库操作
最近开始玩Python,慢慢开始喜欢上它了,以前都是用shell来实现一些自动化或者监控的操作,现在用Python来实现,感觉更棒,Python是一门很强大的面向对象语言,所以作为一个运维DBA或者运 ...
- 使用Python对MySQL数据库操作
本文介绍Python3使用PyMySQL连接数据库,并实现简单的增删改查. 什么是PyMySQL? PyMySQL是Python3.x版本中用于连接MySQL服务器的一个库,Python2.x中则使用 ...
- python的mysql数据库操作
python操作mysql数据库 Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口. Python 数据库接口支持非常多的数据库 ...
- python之(mysql数据库操作)
前言:关心3步骤(此文章只针对python自动化根基展开描述) 什么是mysql数据库操作? 答:利用python对mysql数据库进行增, 删, 改, 查 操作 为什么要用python对mysql ...
- Python 对Mysql的操作
Mysql链接不同的数据库 如果python的模板是按照mysql来写的,后面数据库更换为了Oracle,难道需要重现再来写,当然不是,python提供了API接口,只要编写是面对api,后面的链接会 ...
- python连接mysql的操作
一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可. Linux 下的安装可能会更加简单,除了下载安装包进行安装外,一般的l ...
随机推荐
- Dubbo源码学习总结系列二 dubbo-rpc远程调用模块
dubbo本质是一个RPC框架,我们首先讨论这个骨干中的骨干,dubbo-rpc模块. 主要讨论一下几部分内容: 一.此模块在dubbo整体框架中的作用: 二.此模块需要完成的需求功能点及接口定义: ...
- redis限流器的设计
1.定义注解 import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java. ...
- 2018-2-13-WPF-延迟加载
title author date CreateTime categories WPF 延迟加载 lindexi 2018-2-13 17:23:3 +0800 2018-2-13 17:23:3 + ...
- Switch能否用String类型做参数?
switch(expr): 其中,expr参数可以是一个枚举常量(由整型或字符类型实现)或一个整数表达式,其中整数表达式可以是基本类型int或其包装类Integer.由于byte.short和char ...
- 【抓包工具之Fiddler】导出jmeter脚本
一.下载完成后,解压压缩包,将插件中的2个文件放入到Fiddler安装目录中 插件目录 二.打开fiddler,设置测试时过滤的条件(抓包可以指定域名的请求) 设置过滤条件 三.这里我 ...
- Hadoop的基础命令
首次使用Hadoop时,格式化文件系统命令:hdfs namenode -format 启动HDFS:start-dfs.sh 启动YARN:start-all.sh start-all.sh等价于s ...
- Hadoop搭建完全分布式
ubuntu系统下: https://blog.csdn.net/u014636511/article/details/80171002 centos系统下: https://blog.csdn.ne ...
- Bootstrap的本地引入
今天用前端框架时选择了Bootstrap,然后东西都下好了本地就是引入不进去. 查了一下发现必须jquery要在BootStrap之前引入,然后我更改了引入顺序,发现还是不行 <script s ...
- Delphi Win API 函数 MulDiv
Delphi Win API 函数 MulDiv 原型:function MulDiv(nNumber, nNumerator, nDenominator: Integer): Integer; st ...
- SQL索引优化方法
SQL索引优化方法 以下是代码片段: ROW_NUMBER() OVER(ORDER BY ResumeCreateTime DESC) as [RowID] ,[TopDegree] ,[Degre ...