python对接常用数据库,快速上手!

很多同学在使用python进行自动化测试的时候,会涉及到数据库数据校验的问题,因为不知道如何在python中如何对数据库,这个时候会一脸茫然,今天在这里给大家汇总一下python对接几大常用的数据库操作的方法!

  作为近两年来最火的编程语言的python,受到广大程序员的追捧必然是有其原因的,如果要挑出几点来讲的话,人生苦短,我用python,第一条那就python语法简洁,易上手,第二条呢?便是python有着极其丰富的第三方的库,如此强大的python语言操作各大数据库,不管你使用的关系型数据库是oracle,mysql, sqlserver,还是关系型数据库redis,mongoDB。python都有有与之对应的第三方库。下面就来为大家一一介绍一下!

1、mysql

咱们先来看看如何对接mysql数据库,python2和python3中对接mysql的库是不一样的,在我们以这里python3为标准(毕竟python2在不久的将来官方就不再维护了),在python3中对接mysql数据库使用到的库为pymysql模块。

安装pymysql

pip intsall pymysql

快速上手

import pymysql

# 第一步:连接到数据库
con = pymysql.connect(host="test.lemonban.com", # 数据库的地址
user='xxxxx', # 登录数据库的账号
password="xxxxx", # 登录数据库的密码
port=3306, # 端口
database='xxxxx', # 库名称
)
# 第二步:创建游标
cur = con.cursor()
# 第三步:执行对应的sql语句 方法:execute()
sql = 'SELECT * FROM students;'
cur.execute(sql)

2、oracle

python中对接oracle数据库,使用的第三方库为cx_Oracle

安装

pip install cx_Oracle

快速上手

import cx_Oracle

# 第一块 连接数据库 , 参数为'账号/密码/@ip:端口/库名'
con=cx_Oracle.connect('user/password@host/databases')

# 第二步 创建游标
cur=con.cursor()
# 第三步执行sql语句
sql = 'SELECT * FROM students;'
cur.execute(sql)

3、SQL-server

python对接sqlserver使用的第三方库:pymssql

安装pymssql

pip install pymssql

快速上手

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

4、postgreSQL

python对接postgreSQL使用的模块是psycopg2

安装

pip install psycopg2

快速上手

import psycopg2
# 第一步:连接到数据库
conn = psycopg2.connect(database="xxxxx",
user="xxxxx",
password="xxxxxx",
host="xxxxxx",
port="")

# 第二步:创建游标
cur = con.cursor()
# 第三步:执行对应的sql语句 方法:execute()
sql = 'SELECT * FROM students;'
cur.execute(sql

5、MongoDB

python中操作mongodb使用的第三方库为 pymongo

安装pymongo

pip install pymongo

快速上手

import pymongo

# 第一步:建立连接
client=pymongo.MongoClient("localhost", 27017)
# 第二步:选取数据库
db=client.test1
# 第三步:选取集合
stu = db.stu

# 第四步:执行相关操作

# 添加一条数据
data1={name:'gj',age:18}
stu.insert_one(data1)
# 获取一条数据
s2=stu.find_one()

6、Redis

python操作redis的模块为 redis

安装
pip install redis
快速上手
import redis

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

python对接常用数据库,快速上手!的更多相关文章

  1. python之requests模块快速上手

    安装 pip3 install requests 使用 发送请求 import requests r = requests.get('http://www.baidu.com') 还可以如下方式发送不 ...

  2. Python爬虫---requests库快速上手

    一.requests库简介 requests是Python的一个HTTP相关的库 requests安装: pip install requests 二.GET请求 import requests # ...

  3. 《Python操作SQLite3数据库》快速上手教程

    为什么使用SQLite数据库? 对于非常简单的应用而言,使用文件作为持久化存储通常就足够了,但是大多数复杂的数据驱动的应用需要全功能的关系型数据库.SQLite的目标则是介于两者之间的中小系统.它有以 ...

  4. 快速上手 Python 命令行模块 Click

    关于Click? 说下 Click 模块是干啥的,简单说,它就是把我们的 Python 脚本的一些函数,通过 添加带有 Click 关键字的装饰器进行装饰进而将函数调用的形式转化为命令行传参的形式然后 ...

  5. 【Python五篇慢慢弹】快速上手学python

    快速上手学python 作者:白宁超 2016年10月4日19:59:39 摘要:python语言俨然不算新技术,七八年前甚至更早已有很多人研习,只是没有现在流行罢了.之所以当下如此盛行,我想肯定是多 ...

  6. python的requests快速上手、高级用法和身份认证

    https://blog.csdn.net/qq_25134989/article/details/78800209 快速上手 迫不及待了吗?本页内容为如何入门 Requests 提供了很好的指引.其 ...

  7. WebAPI调用笔记 ASP.NET CORE 学习之自定义异常处理 MySQL数据库查询优化建议 .NET操作XML文件之泛型集合的序列化与反序列化 Asp.Net Core 轻松学-多线程之Task快速上手 Asp.Net Core 轻松学-多线程之Task(补充)

    WebAPI调用笔记   前言 即时通信项目中初次调用OA接口遇到了一些问题,因为本人从业后几乎一直做CS端项目,一个简单的WebAPI调用居然浪费了不少时间,特此记录. 接口描述 首先说明一下,基于 ...

  8. 三分钟快速上手TensorFlow 2.0 (中)——常用模块和模型的部署

    本文学习笔记参照来源:https://tf.wiki/zh/basic/basic.html 前文:三分钟快速上手TensorFlow 2.0 (上)——前置基础.模型建立与可视化 tf.train. ...

  9. 从0开始的Python学习001快速上手手册

    假设大家已经安装好python的环境了. Windows检查是否可以运行python脚本 Ctrl+R 输入 cmd 在命令行中输入python 如果出现下面结果,我们就可以开始python的学习了. ...

随机推荐

  1. Hadoop值Partition分区

    分区操作 为什么要分区? 要求将统计结果按照条件输出到不同文件中(分区).比如:将统计结果按 照手机归属地不同省份输出到不同文件中(分区) 默认 partition 分区 /** 源码中:numRed ...

  2. c语言进阶9-值传递与地址传递

    一.  函数的值传递 函数的值传递是指参数为基本类型时,如整型.浮点型.字符型(特指单字符型)时,参数传递时是从实参拷贝一份值传给形参,形参的变化不会影响实参的值. 1.        基本类型做参数 ...

  3. MongoDB 启动时关于 NUMA 警告 的分析----(To avoid performance problems)

    1. 需求描述 观察MongoDB的启动Log,会看到一个关于  NUMA 的警告 和 优化建议 --17T17:: I CONTROL [initandlisten] ** WARNING: You ...

  4. JAVA面试题 请谈谈你对Sychronized关键字的理解?

    面试官:sychronized关键字有哪些特性? 应聘者: 可以用来修饰方法; 可以用来修饰代码块; 可以用来修饰静态方法; 可以保证线程安全; 支持锁的重入; sychronized使用不当导致死锁 ...

  5. MetInfo企业网站管理系统 5.3 全新安装

    在phpStudy\PHPTutorial\WWW的文件下创建MetInfo文件夹.把MetInfo5.3解压到MetInfo文件夹里 用浏览器访问127.0.0.1/MetInfo 同意安装 下一步 ...

  6. 负载分配—DNS的域名解析

    DNS(Domain Name System)是因特网的一项服务,它作为域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网.人们在通过浏览器访问网站时只需要记住网站的域名即可,而不需 ...

  7. centos7更新yum库为aliyun库

    1. 备份原来的yum源$sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak 2.设置ali ...

  8. Ping、Traceroute工作原理

    在工作开发过程中,我们经常会使用到ping和traceroute.在这里,我们将细述其工作原理,让你在会用的基础之上理解其内部工作过程. ICMP应用实例--Ping Ping 是 ICMP 的一个重 ...

  9. C# 10分钟完成百度语音技术(语音识别与合成)——入门篇

    我们已经讲了人脸识别(入门+进阶).图片识别(入门).下面是链接: C# 10分钟完成百度人脸识别——入门篇 C# 30分钟完成百度人脸识别——进阶篇(文末附源码) C# 10分钟完成百度图片提取文字 ...

  10. Scala集合(四)

    1. 集合 集合主要有三种: Sequence Map Set sequence是一种线性元素的集合,可能会是索引或者线性的(链表).map是包含键值对的集合,就像Java的Map,set是包含无重复 ...