相信很多小伙伴在使用python进行自动化测试的时候,都会涉及到数据库数据校验的问题,在前面的随笔中就已经有讲过连接mysql的使用,今天给大家汇总一下python对接几大常用的数据库操作的方法!众所周知,python有着极其丰富的第三方库,所以不管你使用的是关系型数据库(oracle,mysql, sqlserver等),还是非关系型数据库(redis,mongoDB),python都有与之对应的第三方库。下面给大家一一介绍。

Mysql

​ mysql应该是大家最熟悉的一种数据库了,在python中使用的第三方库为pymysql,这里不多介绍,前面的随笔已单独介绍,请移步传送门

Oracle

​ python 对接 Oracle 数据库,使用的第三方库为 cx_Oracle。安装:pip install cx_Oracle

import cx_Oracle                   

# 第一步 连接数据库, 参数为'账号/密码/@ip:端口/库名'
con = cx_Oracle.connect('user_name/password@127.0.0.1::8080/databases')
# 第二步 创建游标
cur = con.cursor()
# 第三步 执行sql语句
sql = 'SELECT * FROM user;'
cur.execute(sql)

sql-server

​ python 对接 sql-server数据库,使用的第三方库为 pymssql。安装:pip install pymssql

import pymssql

# 第一步 连接到数据库
con = pymssql.connect(host='xxx', # 数据库的地址
user='xxx', # 登录数据库的账号
password='xxxx', # 登录数据库的密码
database='xxx') # 库名
# 第二步 创建游标
cur = con.cursor()
# 第三步 执行sql语句
sql = 'SELECT * FROM user;'
cur.execute(sql)

PostgreSQL

​ python 对接 PostgreSQL数据库,使用的第三方库为 psycopg2。安装:pip install psycopg2

import psycopg2

# 第一步 连接到数据库
con = psycopg2.connect(database="xxxxx", # 库名
user="xxxxx", # 数据库账号
password="xxxxxx", # 数据库密码
host="xxxxxx", # 数据库地址
port="5432") # 数据库端口号
# 第二步 创建游标
cur = con.cursor()
# 第三步 执行sql语句
sql = 'SELECT * FROM user;'
cur.execute(sql)

MongoDB

​ python 对接MongoDB数据库,使用的第三方库为 pymongo。安装:pip install pymongo

import pymongo

# 第一步:建立连接,数据库地址,端口号
client = pymongo.MongoClient("localhost", 27017)
# 第二步:选取数据库
db = client.test1
# 第三步:选取集合
stu = db.stu # 第四步:执行相关操作
# 添加一条数据
data1 = {name:'test',age:18}
stu.insert_one(data1)
# 获取一条数据
res = stu.find_one()

Redis

​ python 对接Redis数据库,使用的第三方库为 redis。安装:pip install redis

import redis 

# 连接数据库
st = redis.StrictRedis(
host='localhost', # 数据库地址
port='6379', # 端口:
db='testdata', # 库名:
)
# redis操作的命令,对应st对象的方法
# 比如在数据库中创建一条键为test的数据,往里面添加3个元素
st.lpush('test',11,22,33)

【python接口自动化】- 对接各大数据库的更多相关文章

  1. python接口自动化(十)--post请求四种传送正文方式(详解)

    简介 post请求我在python接口自动化(八)--发送post请求的接口(详解)已经讲过一部分了,主要是发送一些较长的数据,还有就是数据比较安全等.我们要知道post请求四种传送正文方式首先需要先 ...

  2. python接口自动化-Cookie_绕过验证码登录

    前言 有些登录的接口会有验证码,例如:短信验证码,图形验证码等,这种登录的验证码参数可以从后台获取(或者最直接的可查数据库) 获取不到也没关系,可以通过添加Cookie的方式绕过验证码 前面在“pyt ...

  3. python接口自动化4-绕过验证码登录(cookie)

    前言 有些登录的接口会有验证码:短信验证码,图形验证码等,这种登录的话验证码参数可以从后台获取的(或者查数据库最直接). 获取不到也没关系,可以通过添加cookie的方式绕过验证码. 一.抓登录coo ...

  4. python接口自动化23-token参数关联登录(登录拉勾网)

    前言 登录网站的时候,经常会遇到传token参数,token关联并不难,难的是找出服务器第一次返回token的值所在的位置,取出来后就可以动态关联了 登录拉勾网 1.先找到登录首页https://pa ...

  5. 2020年第二期《python接口自动化+测试开发》课程,已开学!

    2020年第二期<python接口自动化+python测试开发>课程,12月15号开学! 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学,方便交流 本期上课时间:12月15号-3月29 ...

  6. python接口自动化13-data和json参数傻傻分不清

    前言 在发post请求的时候,有时候body部分要传data参数,有时候body部分又要传json参数,那么问题来了:到底什么时候该传json,什么时候该传data? 一.识别json参数 1.在前面 ...

  7. python接口自动化(Cookie_绕过验证码登录)

     python接口自动化(Cookie_绕过验证码登录) 有些登录的接口会有验证码,例如:短信验证码,图形验证码等,这种登录的验证码参数可以从后台获取(或者最直接的可查数据库) 获取不到也没关系,可以 ...

  8. Python接口自动化——soap协议传参的类型是ns0类型的要创建工厂方法纪要

    1:在Python接口自动化中,对于soap协议的xml的请求我们可以使用Suds Client来实现,其soap协议传参的类型基本上是有2种: 第一种是传参,不需要再创建啥, 第二种就是ns0类型的 ...

  9. python接口自动化28-requests-html爬虫框架

    前言 requests库的好,只有用过的人才知道,最近这个库的作者又出了一个好用的爬虫框架requests-html.之前解析html页面用过了lxml和bs4, requests-html集成了一些 ...

  10. python接口自动化-参数化

    原文地址https://www.cnblogs.com/yoyoketang/p/6891710.html python接口自动化 -参数关联(一)https://www.cnblogs.com/11 ...

随机推荐

  1. docker基本使用-安装

    一. Linux服务器安装 1. 可参考官网安装步骤,点击前往官网 2. 常见问题 a. 在执行安装docker-ce命令的时候出错:requires containerd.io >= 1.2. ...

  2. 内存屏障在CPU、JVM、JDK中的实现

    前言 内存屏障(英语:Memory barrier),也称内存栅栏,内存栅障,屏障指令等,是一类同步屏障指令,它使得 CPU 或编译器在对内存进行操作的时候, 严格按照一定的顺序来执行, 也就是说在内 ...

  3. Java——Number类

    在平时学习中,当我们需要使用数字的时候,通常使用内置数据类型,如byte,int,long,double等. int i =12; float a = 12.3; 在实际开发中,经常会遇到需要使用对象 ...

  4. checkAll操作

    //全部勾选 function checkAll(obj) { var cols = document.getElementsByName('cols'); for ( var i = 0; null ...

  5. Jenkins(4)docker容器内部修改jenkins容器时间

    前言 用docker搭建的Jenkins环境时间显示和我们本地时间相差8个小时,需修改容器内部的系统时间 查看时间 查看系统时间 date-R 进入docker容器内部,查看容器时间 docker e ...

  6. C语言实现--静态链表的操作

    1,我们研究数据结构的操作,第一要弄懂它的结构体表示(也就是结构体特点).第二要清楚它的初始化和撤销过程.对于静态链表首先分析它的特点:一是采用静态存储方式,二是没有指针.静态链表就是不用指针来表示链 ...

  7. Codeforces Round #327 (Div. 1) C. Three States

    C. Three States time limit per test 5 seconds memory limit per test 512 megabytes input standard inp ...

  8. hdu5414 CRB and String

    Problem Description CRB has two strings s and t. In each step, CRB can select arbitrary character c  ...

  9. Musical Theme POJ - 1743 后缀数组

    A musical melody is represented as a sequence of N (1<=N<=20000)notes that are integers in the ...

  10. .Net反编译实践记录

    去壳 去壳可以使用 de4dot,源码在 这里.可用版本 下载地址. 使用方式为:.\de4dot.exe [path] 修改代码 反编译修改代码可以使用 dnSpy,源码在 这里.可用版本 下载地址 ...