【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 文本对象。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/24930.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

持续警惕火灾风险:学校可燃气体报警器的定期校准检验

可燃气体报警器在学校中的安装、检验和校准对于保护师生生命安全至关重要。 接下来&#xff0c;佰德将探讨可燃气体报警器在学校中的必要性&#xff0c;以及相关实际案例和数据&#xff0c;为您呈现一个安全的学习环境。 一、学校安全不能掉以轻心 学校是培养未来的摇篮&…

【CS.SE】端午节特辑:Docker容器化技术详解与实战

端午节, 先祝愿大家端午安康&#xff0c;阖家幸福, 哈哈&#xff01;这篇讲下Docker这一现代软件开发中不可或缺的技术。软件工程涉及软件开发的整个生命周期&#xff0c;包括需求分析、设计、构建、测试、部署和维护。Docker作为一种容器化技术&#xff0c;直接关联到软件部署…

云服务器CPU和内存直接被zzh恶意挖矿程序打满,如何解决?

回顾 最近在服务器上面部署网站&#xff0c;刚开始使用还是没问题的&#xff0c;当时一段时间之后发现CPU和内存总是被打满&#xff0c;本地没有跑大的应用&#xff0c;主要有mysql、nginx、redis&#xff0c;一度还以为是nginx 的问题&#xff0c;但是后来排除了。之后使用ht…

Android 11 低电量自动关机失效

Android 11 低电量自动关机 概述 安卓系统设计了低电关机功能&#xff0c;旨在当手机电池电量过低时自动关机&#xff0c;以保护手机硬件和数据安全。该功能由以下几个部分组成&#xff1a; 电池电量监测: 安卓系统通过 BatteryService 组件持续监测电池电量。BatteryService…

小主机折腾记24

好久不更新&#xff0c;最近折腾的事如下 1.10块钱自提买了个半高机箱&#xff0c;15086140&#xff0c;把之前拆机的H61m-A/M32AA/DP_MB与200w航嘉电源装了进去&#xff0c;额外买了半高pcie转接了个m2位&#xff0c;江波龙64g安装了win10专业版&#xff0c;最后卖了176块钱&a…

Java 中的 Thread.join() 方法详解

介绍 本文基于 Java 8 进行编写&#xff0c;可能与您使用的 Java 版本有所不同&#xff0c;请注意版本差异。 在多线程编程中&#xff0c;线程的管理和协调是一个重要课题。Java 提供了多种机制来实现线程之间的协调&#xff0c;其中之一就是 Thread.join() 方法。join() 方法…

实战分析:记录一下线上OOM排查(原创)

记录背景 公司仓库系统经常反馈出现系统使用不了503的情况&#xff0c;自动挂掉。 启动脚本添加命令 以为是程序发生OOM导致内存溢出&#xff0c;添加命令&#xff0c;发生内存溢出输出文件 -XX:HeapDumpOnOutOfMemoryError -XX:ErrorFile./errorfile.log -XX:HeapDumpPath.…

计算文件md5

在开发过程中&#xff0c;经常要验证文件是否是同一个文件&#xff0c;或者文件是否被修改&#xff0c;可以通过计算md5值来比对文件是否改变。 使用方法 md5sum 文件名 # 67ed5ca4a19a2d9682b680cb30c9be64 *aaa.mp4## 67ed5ca4a19a2d9682b680cb30c9be64 就是aaa.mp4的MD5值…

Windows无法安装到这个硬盘空间。选定的分区上启用了BitLocker驱动器加密。请在控制面板中暂停(也称为禁用)BitLocker,然后重新开始安装。

我们安装操作系统的时候&#xff0c;到了选择安装分区的地方&#xff0c;我们选中的分区提示“无法在驱动器的分区上安装Windows”&#xff0c;然后我们点击显示详细信息&#xff0c;提示如图下所示 分析原因&#xff0c;可能是之前的分区未进行格式化。但是这个时候我们无法格…

Maven的安装与配置要点和难点常见报错和解决方案

Maven的安装与配置过程可以概括为以下几个步骤: 1. 安装前提 安装JDK:Maven需要Java环境,因此首先需要安装JDK。通常建议使用与Maven兼容的JDK版本,如JDK 1.8或更高版本。 2. 下载Maven 访问Maven官网:从Maven的官方网站下载最新版本的Maven。确保选择与操作系统兼容的…

【Python预处理系列】深入理解过采样技术及其Python实现

目录 一、过采样简介 二、过采样的实现方法 三、过采样和欠采样是数据增强吗 四、Python实现SMOTE过采样 &#xff08;一) 生成不平衡数据集 &#xff08;二&#xff09; 将数据集转换为DataFrame&#xff0c;便于展示 &#xff08;三) 应用SMOTE算法进行过采样 &…

JavaScript html css 字符串对象

字符串对象 字符串所有的方法&#xff0c;都不会修改字符串本身&#xff08;字符串是不可变的&#xff09;&#xff0c;操作完成会返回一个新的字符串。 length属性 作用&#xff1a; 获取字符串长度 示例&#xff1a; <span style"background-color:#f8f8f8&qu…

阿里云ECS服务器部署javaweb项目实操

在阿里云ECS实例上部署Java Web项目涉及几个主要步骤&#xff1a;创建和配置ECS实例、安装必要的软件&#xff08;JDK、Web服务器、数据库等&#xff09;、部署Java Web应用程序以及配置防火墙和安全组。以下是详细的步骤&#xff1a; 步骤1&#xff1a;创建ECS实例 登录阿里云…

【Centos7】CentOS 7下的PyTorch安装策略:高效实践指南

【Centos7】CentOS 7下的PyTorch安装策略&#xff1a;高效实践指南 大家好 我是寸铁&#x1f44a; 总结了一篇【Centos7】CentOS 7下的PyTorch安装策略&#xff1a;高效实践指南✨ 喜欢的小伙伴可以点点关注 &#x1f49d; 前言 由于需要跑深度学习&#xff0c;要用到pytorch&a…

java的序列化与反序列化

一、定义 Java序列化和反序列化&#xff1a;序列化就是指把Java对象转换为字节序列的过程。&#xff08;例如将一个类转化为json类型&#xff09;反序列化就是指把字节序列恢复为Java对象的过程。 在Java实际运用中&#xff0c;,许多方面应用序列化反序列化——持久化、通信、…

重塑楼宇管理:智慧管控可视化开启高效新篇章

借助图扑智慧楼宇管控可视化技术&#xff0c;实现实时监控与智能化管理&#xff0c;快速响应潜在问题&#xff0c;确保楼宇安全、节能和高效运行。

Git之解决重复输入用户名和密码(三十九)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

快速入门Linux及使用VSCode远程连接Linux服务器

在当前的技术环境中&#xff0c;Linux操作系统因其强大的功能和灵活性而广受欢迎。无论你是开发人员、系统管理员还是技术爱好者&#xff0c;学习Linux都是提升技术技能的重要一步。本文将介绍如何快速入门Linux&#xff0c;并使用Visual Studio Code&#xff08;VSCode&#x…

时光正好保剑锋的抱治百病与成年人的世界

《时光正好》&#xff1a;保剑锋的“抱治百病”与成年人的世界在繁忙的都市里&#xff0c;每个角落上演着各自的人生戏码。而在这些戏码中&#xff0c;由保剑锋主演的《时光正好》无疑成为了近期引人注目的焦点。这部电视剧以其真实而深刻的剧情&#xff0c;让我们看到了成年人…

深入了解Linux中的db_dump185命令

深入了解Linux中的db_dump185命令 在Linux系统中&#xff0c;db_dump185可能不是一个广为人知的命令&#xff0c;但它对于某些特定的数据库或文件系统任务来说却是一个非常有价值的工具。特别是当你与旧版的Berkeley DB数据库或类似的存储机制打交道时&#xff0c;db_dump185可…