• python自动化学习笔记(六)


    一、Python标准数据库接口DB-API介绍

    Python标准数据库接口为 Python DB-API,它为开发人员提供了数据库应用编程接口。Python DB-API支持很多种的数据库,你可以选择跟自己项目

    相关的数据库。Python DB-API支持的数据库包括,GadFly,MySQL,Oracle,PostgreSQL,Redis等数据库,不同的数据库你需要下载不同的DB API

    模块,例如你需要访问Oracle数据库和Mysql数据,你需要下载Oracle和MySQL数据库模块。Python的DB-API,为大多数的数据库实现了接口,使用

    它连接各数据库后,就可以用相同的方式操作各数据库。下面会对Python操作MySQL和Redis进行详细介绍

    Python DB-API使用流程:

    1、引入API模块

    2、获取与数据库连接

    3、执行SQL语句和存储过程

    4、关闭数据库连接

    二、Python操作MySQL

    1、连接mysql,ip,端口,用户,密码,数据库,使用connect方法,端口一定要是int类型

    2、建立游标

    3、执行sql

    4、获取结果

    5、关闭游标

    6、关闭数据库连接

    注:charset必须写uft8不能写utf-8,否则会报错,还需要导入import pymysql模块

    三、Python操作MySQL常用函数总结

    connect():创建数据库连接,里面可以指定参数:用户名,密码,主机等信息。这只是连接到了数据库,要想操作数据库需要创建游标。

    cursor():创建游标,通俗理解,可以把数据库看成一个仓库,而游标是这个仓库的管理员,你想要仓库里面的东西,或者想进仓库执行什么操作,管理

    员帮你去干

    commit():如果是insert,delete,udate操作需要执行commit提交操作,没有提交操作,数据库默认回滚

    rollback():回滚

    cursor用来执行命令的方法:

    1、callproc(self, procname, args):用来执行存储过程,接收的参数为存储过程名和参数列表,返回值为受影响的行数

    2、execute(self, query, args):执行单条sql语句,接收的参数为sql语句本身和使用的参数列表,返回值为受影响的行数

    3、executemany(self, query, args):执行单条sql语句,但是重复执行参数列表里的参数,返回值为受影响的行数

    cursor用来获取返回结果的方法:

    1、fetchall(self):接收sql语句执行的所有结果,把所有结果放在一个元组里,每一条数据是一个元组

    2、fetchone(self):返回一条结果行,结果是一个一维元组,到底读取的是哪条数据,和游标的位置有关系

    备注:如果游标指定返回的字典,conn.cursor(cursor=pymysql.cursors.DictCursor),那么获取返回值函数返回的是列表,每条数据是是一个字典

    cursor用来移动游标的方法:

    1、scroll(self, value, mode='relative'):移动指针到某一行.如果mode='relative',则表示从当前所在行移动value条,如果 mode='absolute',则表示从结果集的

    第一行移动value条

    如果有目录层级的怎么添加K和V呢,需要在key前面加上目录名

    四、Python操作Redis

    1)String操作

    Redis中的String在内存中按照K-V形式来存储的,一个name对应一个value来存储,set ,get, delete, setex 方法都是针对string类型的

    2)Hash类型

    Redis中的Hash 在内存中类似于一个name对应一个dic来存储,且Hase类型没有过期时间

    练习题:Redis迁移

    封装MySQL和redis

    if __name__=='__main__':作用:自己测试调试的时候用,别人在引用这个Python文件时if __name__=='__main__':下面的代码是不会被执行的

    五、接口开发

    开发接口需要使用FlaskWeb框架,它是用Python实现的。Flask显著的特点是:它是一个“微”框架。”微”意味着Flask旨在保持核心的简单,但同时又易于

    扩展。默认情况下,Flask 不包含数据库抽象层、表单验证,或是其它任何已有多种库可以胜任的功能。然而,Flask 支持用扩展来给应用添加这些功能。

    众多的扩展提供了数据库集成、表单验证、上传处理、各种各样的开放认证技术等功能。Flask的这些特性,使得它在Web开发方面变得非常流行。

    普通的函数怎么绑定成服务里面的方法,在函数的前面加上装饰器@服务名.route,装饰器里面填请求的路径和请求的方式

    那么有关联关系的接口怎么写呢,比如在京东购物,想要加入购物车,或者是想要支付,必须得前登陆 ,像这种依赖登录接口才能进行其他操作。那用户

    登录了是怎么校验用户状态的,怎么能知道用户登录没登录,通过sessions,获取sessions有两种方法,一种是使用cookie获取,一种是用户传入

    1、前判断用户是否存在,如果用户存在往redis写入session,并返回

    2、利用session和用户名判断用户是否正常登录

    从cookie获取sessions

    六、浏览器中set cookie

    浏览器中查看本地cookie,开发者工具->Application->cookie

  • 相关阅读:
    yjh_study_command
    installed_oracle_can't_use
    Database 2 Day DBA guide_Chapter3
    oracle_great_integration_译文
    oracle_set_autocommit
    Database 2 Day DBA guide_Chapter2
    linux_base_commond_two
    linux_base_commond_one
    Oracle_11gR2_概念_第06章_数据字典和动态性能视图_英文词汇
    angular 自定义select选项,tab切换!!!
  • 原文地址:https://www.cnblogs.com/luoqingqing/p/8325580.html
Copyright © 2020-2023  润新知