【发布时间】:2011-08-03 17:04:21
【问题描述】:
初学者问题 - sqlite 和 sqlalchemy 有什么区别?
【问题讨论】:
标签: python sqlite sqlalchemy
初学者问题 - sqlite 和 sqlalchemy 有什么区别?
【问题讨论】:
标签: python sqlite sqlalchemy
它们是苹果和橙子。
Sqlite 是一个数据库存储引擎,可以比 MySQL、PostgreSQL、Oracle、MSSQL 等更好。用于存储和检索文件中的结构化数据。
SQLAlchemy 是一个提供对象关系映射器 (ORM) 的 Python 库。它按照它的建议做:它将您的数据库(表等)映射到 Python 对象,以便您可以更轻松地与它们进行本地交互。 SQLAlchemy 可以与 sqlite、MySQL、PostgreSQL 等一起使用。
因此,ORM 提供了一组工具,让您可以跨数据库引擎一致地与数据库模型进行交互。
【讨论】:
sqlite3 是一个嵌入式 RDBMS。
根据this article:
关系数据库管理系统 (RDBMS) 是基于 E. F. Codd 引入的关系模型的数据库管理系统 (DBMS)。当前使用的大多数流行的商业和开源数据库都是基于关系数据库模型的。 RDBMS的一个简短的定义可能是一个DBMS,其中数据以表的形式存储,数据之间的关系也以表的形式存储。
SQLAlchemy 是 Python ORM。
根据这篇文章:
计算机软件中的对象关系映射(ORM、O/RM 和 O/R 映射)是一种编程技术,用于在面向对象编程语言中的不兼容类型系统之间转换数据。这实际上创建了一个可以在编程语言中使用的“虚拟对象数据库”。
【讨论】: