【SQLAlChemy】如何连接数据库?

使用SQLAlChemy连接数据库

导入包

首先,导入创建数据库引擎的包。

from sqlalchemy import create_engine

编写数据库配置

SQLALCHEMY_DATABASE_URL = "mysql://root:123456789@127.0.0.1:3306/tortoise"

字段解释:

  • mysql::这是数据库方言和驱动的名称。在本例中,我们使用的是 MySQL 数据库。
  • root::这是连接数据库的用户名。
  • 123456789: 这是连接数据库的密码。
  • @127.0.0.1::这是数据库服务器的 IP 地址。在本例中,数据库服务器位于同一台机器上,所以我们使用了本地主机 IP 地址 127.0.0.1。
  • 3306::这是数据库服务器的端口号。对于 MySQL 数据库,缺省端口号是 3306。
  • /tortoise:这是数据库的名称。在本例中,我们将连接到名为 tortoise 的数据库。

创建数据库引擎

传入数据库配置连接,来创建数据库引擎。

# 创建数据库引擎
engine = create_engine(
    SQLALCHEMY_DATABASE_URL,
)

创建测试连接

# 创建连接
with engine.connect() as connection:
    rs = connection.execute(text('select * from user_account'))
    print(rs)
    res = rs.fetchall()
    for r in res:
        print(r)

输出:

<sqlalchemy.engine.cursor.CursorResult object at 0x1059b49a0>
(4, 'yan', 'xuecan')
(5, 'yan', 'pengbo')
(6, 'zhang', 'zhangsan')
(7, 'zhang', 'xiaoming')
(10, 'zhang', 'xin')
(14, 'li', 'ming')
(15, 'yao', 'zhetian')
(16, 'fan', 'sixian')
(17, 'test_name', 'test_fullname')

数据库表内容:

注意

在执行 SQL 语句时,必须加上 text,否则会报以下错误sqlalchemy.exc.ObjectNotExecutableError: Not an executable object: 'xxxxxxx'。因为你尝试执行一个字符串,而不是一个 SQLAlchemy 的查询对象。

如果你想执行原生的 SQL 语句,你需要使用 text 函数来构建一个可执行的 SQL 文本对象。

相关推荐

  1. FastAPI+SQLAlchemy数据库连接

    2024-06-09 11:46:04       23 阅读
  2. SQLAlchemy配置连接多个数据库

    2024-06-09 11:46:04       33 阅读
  3. SQLAlchemy数据库引擎engine与连接对象Connection

    2024-06-09 11:46:04       34 阅读
  4. sqlalchemy定期保持mysql连接活跃

    2024-06-09 11:46:04       22 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-09 11:46:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-09 11:46:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-06-09 11:46:04       82 阅读
  4. Python语言-面向对象

    2024-06-09 11:46:04       91 阅读

热门阅读

  1. 43.bug:mapper接口参数使用@param重命名导致的错误

    2024-06-09 11:46:04       32 阅读
  2. 如何评价GPT-4o?【模板】

    2024-06-09 11:46:04       31 阅读
  3. 新电脑必装的7款软件,缺一不可

    2024-06-09 11:46:04       30 阅读
  4. Docker无法stop或者rm指定容器

    2024-06-09 11:46:04       29 阅读
  5. 「前端+鸿蒙」鸿蒙应用开发-TS函数

    2024-06-09 11:46:04       26 阅读
  6. 轻量管理内核复杂级别的项目

    2024-06-09 11:46:04       28 阅读
  7. Float浮动

    2024-06-09 11:46:04       29 阅读
  8. Android 日志实时输出

    2024-06-09 11:46:04       32 阅读
  9. 力扣1248.统计优美子数组

    2024-06-09 11:46:04       27 阅读
  10. 定位器追踪器怎么连接手机

    2024-06-09 11:46:04       23 阅读