zoukankan      html  css  js  c++  java
  • MySQL、sqlalchemy、pymysql、mysqldb、DBAPI之间关系梳理(终于明白了)

    MySQL、sqlalchemy、pymysql、mysqldb、DBAPI之间关系梳理(终于明白了)

    python3不再支持mysqldb 请用pymysql和mysql.connector

    问题背景
    用Python处理MySQL数据库相关问题时,需要用到相关库,主要有pymysql、sqlalchemy等,各种术语比较多,需要做一下系统梳理。

    问题解释
    Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口。

    Python 数据库接口支持非常多的数据库,- GadFly - mSQL - MySQL - PostgreSQL - Microsoft SQL Server 2000 - Informix - Interbase - Oracle - Sybase。。。

    DB API
    DB-API 是一个规范. 它定义了一系列必须的对象和数据库存取方式, 以便为各种各样的底层数据库系统和多种多样的数据库接口程序提供一致的访问接口 。

    Python的DB-API,为大多数的数据库实现了接口,使用它连接各数据库后,就可以用相同的方式操作各数据库。

    Python DB-API使用流程:

    引入 API 模块。
    获取与数据库的连接。
    执行SQL语句和存储过程。
    关闭数据库连接
    MySQL-Python(MySQLdb)
    MySQLdb 是用于Python链接Mysql数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API 上建立的。

    MySQL-python 又叫 MySQLdb,是 Python 连接 MySQL 最流行的一个驱动,很多框架也是依据其开发的。

    C语言开发。

    只支持python2.x,安装有许多前置条件。

    Mysqlclient
    完全兼容MySQLdb的衍生版;同时兼容Python3.x

    是Django ORM的依赖工具。

    原生SQL操作数据库。

    PyMysql
    纯Python实现的驱动。

    速度不如MySQLdb。

    兼容MySQL-python

    Peewee 
    ORM 是 Python 对象与数据库关系表的一种映射关系,,有了 ORM 你不再需要写 SQL 语句。

    ORM兼容多种数据库系统,如sqlite, mysql、postgresql。

    写原生 SQL 的过程非常繁琐,代码重复。

    SQLAlchemy
    既支持原生 SQL,又支持 ORM 的工具;

  • 相关阅读:
    介绍自己
    第六周作业
    第五周作业
    第四周作业
    秋季学期学习总结
    币值转化
    justintime compiler
    PostgreSQL windows下安装出现问题的解决办法
    Java语言的异常处理,完全理解下面4点就可以了
    Ultraedit用途【来自网络】
  • 原文地址:https://www.cnblogs.com/leijiangtao/p/11805639.html
Copyright © 2011-2022 走看看