SQLAlchemy 2.0 文档
- 上一篇: SQLAlchemy 统一教程
- 下一篇: 使用事务和 DBAPI
- 上级: 首页
- 本页目录
建立连接 - 引擎¶
欢迎 ORM 和 Core 的读者!
每个连接到数据库的 SQLAlchemy 应用程序都需要使用 Engine
。这个简短的章节适用于所有人。
任何 SQLAlchemy 应用程序的开始都是一个名为 Engine
的对象。此对象充当特定数据库连接的中心来源,既提供工厂,又为这些数据库连接提供名为 连接池 的持有空间。引擎通常是为特定数据库服务器创建一次的全局对象,并使用 URL 字符串进行配置,该字符串将描述应如何连接到数据库主机或后端。
在本教程中,我们将使用仅在内存中的 SQLite 数据库。这是一种轻松测试方法,无需预先设置实际的数据库。 Engine
是通过使用 create_engine()
函数创建的
>>> from sqlalchemy import create_engine
>>> engine = create_engine("sqlite+pysqlite:///:memory:", echo=True)
create_engine
的主要参数是字符串 URL,上面作为字符串 "sqlite+pysqlite:///:memory:"
传递。此字符串向 Engine
指示三个重要事实
我们正在与哪种数据库通信? 这是上面的
sqlite
部分,它在 SQLAlchemy 中链接到一个称为 方言 的对象。我们正在使用什么 DBAPI? Python DBAPI 是 SQLAlchemy 用来与特定数据库交互的第三方驱动程序。 在这种情况下,我们使用名称
pysqlite
,在现代 Python 用法中,它是 SQLite 的 sqlite3 标准库接口。 如果省略,SQLAlchemy 将使用所选特定数据库的默认 DBAPI。我们如何定位数据库? 在这种情况下,我们的 URL 包括短语
/:memory:
,它是sqlite3
模块的指示符,表明我们将使用仅在内存中的数据库。 这种数据库非常适合实验,因为它不需要任何服务器,也不需要创建新文件。
我们还指定了一个参数 create_engine.echo
,它将指示 Engine
将其发出的所有 SQL 记录到将写入标准输出的 Python 记录器中。 此标志是设置 更正式的 Python 日志记录 的简写方式,对于脚本中的实验非常有用。 许多 SQL 示例将在 [SQL]
链接下方包含此 SQL 日志记录输出,单击该链接将显示完整的 SQL 交互。
flambé! 龙和 The Alchemist 图像设计由 Rotem Yaari 创建并慷慨捐赠。
使用 Sphinx 7.2.6 创建。 文档上次生成时间: 2025年3月11日 02:40:17 PM EDT