我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python中sqlalchemy框架如何使用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python中sqlalchemy框架如何使用

今天就跟大家聊聊有关Python中sqlalchemy框架如何使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

安装

安装

#进入虚拟环境#执行./python3 -m pip installimport sqlalchemyprint(sqlalchemy.__version__) # 1.1.15我这里使用的版本是1.1.15

创建连接对象

from sqlalchemy import create_engine# 连接本地test数据库engine = create_engine("mysql://root:root@localhost/test?charset=utf8")

运行时会出错,因为需要驱动库,默认会调用MySQLdb。

ImportError: No module named 'MySQLdb'

我们前面安装了pymysql,因此完整的要这么写:

engine = create_engine("mysql+pymysql://root:root@localhost/test?charset=utf8")

简单使用

SQL语句查询

result = engine.execute("select * from news")print(result.fetchall())#[(1, '本机新闻标题'), (2, '今天的新闻'), (3, '新闻标题1'), (4, '新闻标题2'), (5, '元组新闻1'), (6, '元组新闻2')]

创建映射

既然我们用ORM,就是为了少写甚至不写SQL语句。

ORM是数据表和对象之间的映射。

创建一个Infos.py文件,这个文件我们来做数据表的映射

from sqlalchemy.ext.declarative import declarative_baseBase = declarative_base()from sqlalchemy import Column, Integer, Stringclass News(Base):# 表名称__tablename__ = 'news'# news表里id字段id = Column(Integer, primary_key=True, autoincrement=True)# news表里title字段title = Column(String(length=255), nullable=False)

News类就是我们数据表news的映射(字段:id、title)。

使用

from sqlalchemy import create_enginefrom mappers.Infos import Newsfrom sqlalchemy.orm import sessionmaker# 连接本地test数据库engine = create_engine("mysql+pymysql://root:root@localhost/test?charset=utf8")# 创建会话session = sessionmaker(engine)mySession = session()# 查询结果集result = mySession.query(News).all()print(result[0])

我们要注意最后的查询结果,看看结果集中的元素长什么样?^_^

<mappers.Infos.News object at 0x1050c6e80>

查询处理的记录都是对象。

各种查询

只查询第一条记录

# 查询第一条result = mySession.query(News).first()print(result.title) #打印对象属性通过id字段查询# 查询id为2的result = mySession.query(News).filter_by(id=2).first()print(result.title)# 查询id为2的result = mySession.query(News).filter(News.id==2).first()分页查询# 分页查询 0,2result = mySession.query(News).filter(News.id>1).limit(2).offset(0).all()print(result)自定义过滤条件# 自定义过滤条件result = mySession.query(News).filter(text("id>:id")).params(id=2).all()

根据主键查询

result = mySession.query(News).get(3)print(result.title)

新增和修改

# 新增news = News(title="新增测试标题")mySession.add(news)mySession.commit()#修改mySession.query(News).filter(News.id==7).update({"title":"修改之后的标题"})mySession.commit()

Python利用sqlacodegen自动生成ORM实体类示例

前面方法我们是手动创建了一个名叫Infos.py的文件,然后定义了一个News类,把这个类作为和我们news数据表的映射。

from sqlalchemy.ext.declarative import declarative_baseBase = declarative_base()from sqlalchemy import Column, Integer, Stringclass News(Base):# 表名称__tablename__ = 'news'# news表里id字段id = Column(Integer, primary_key=True, autoincrement=True)# news表里title字段title = Column(String(length=255), nullable=False)

现在我们来看看sqlacodegen这个工具,自动生成像上面那样的类文件。

安装sqlacodegen

#cd 项目虚拟环境#执行./python3 -m pip install sqlacodegen

使用sqlacodegen生成案列

#注意还是在虚拟环境目录下执行./sqlacodegen --tables fund --outfile ../../mappers/Found.py mysql+pymysql://root:root@localhost/test?charset=utf8

看完上述内容,你们对Python中sqlalchemy框架如何使用有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网行业资讯频道,感谢大家的支持。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python中sqlalchemy框架如何使用

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python中sqlalchemy框架如何使用

今天就跟大家聊聊有关Python中sqlalchemy框架如何使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。安装1、安装#进入虚拟环境#执行./python3 -m pip in
2023-06-20

Python ORM框架中的SQLAlchemy怎么用

小编给大家分享一下Python ORM框架中的SQLAlchemy怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、SQLAlchemy 介绍1.1 ORM 的概念ORM全称Object Relational Map
2023-06-29

python中SQLAlchemy框架的用法是什么

SQLAlchemy是一个Python的ORM(对象关系映射)工具,它提供了一种在Python中操作关系型数据库的方式,并且支持多种数据库后端。SQLAlchemy的主要用法如下:定义数据模型:使用SQLAlchemy的ORM,可以通过定
python中SQLAlchemy框架的用法是什么
2024-04-09

python中SQLAlchemy框架的用法是什么

SQLAlchemySQLAlchemy是一个PythonORM库,允许程序员使用Python对象与关系型数据库交互。其核心组件包括Session、Mapper、Query、Model和Engine。SQLAlchemy的主要功能包括对象映射、SQL查询构建、事务管理和关系映射。它提供简洁性、灵活性、可靠性、可扩展性和性能。SQLAlchemy广泛用于需要与关系型数据库交互的Python应用程序,包括Web开发、数据分析、自动化任务、RESTfulAPI和科学计算。
python中SQLAlchemy框架的用法是什么
2024-04-10

python中SQLAlchemy框架怎么安装

安装SQLAlchemySQLAlchemy是一款PythonORM,可简化数据库交互。安装步骤:安装Python。使用pip安装SQLAlchemy:pipinstallsqlalchemy。验证安装:pipshowsqlalchemy。Windows/macOS/Linux详细步骤使用命令提示符/终端执行:pipinstallsqlalchemypipenv安装在虚拟环境中:pipenvinstallsqlalchemy
python中SQLAlchemy框架怎么安装
2024-04-10

python中SQLAlchemy框架怎么安装

要安装SQLAlchemy框架,可以按照以下步骤进行:确保你已经安装了Python。你可以从Python官方网站下载并安装最新版本的Python。打开命令行界面(Windows上可以使用命令提示符或Powershell,Mac和Linux
python中SQLAlchemy框架怎么安装
2024-04-09

Python流行ORM框架sqlalchemy的简单使用

安装 http://docs.sqlalchemy.org 1、安装#进入虚拟环境 #执行 ./python3 -m pip installimport sqlalchemy print(sqlalchemy.__version__) #
2022-06-02

详解SQLAlchemy框架使用手册

SQLAlchemy是一个灵活且功能强大的ORM框架,它可以让Python开发者轻松地管理数据库,本文主要介绍了SQLAlchemy框架使用手册,需要的朋友们下面随着小编来一起学习学习吧
2023-05-19

python中SQLAlchemy框架有哪些功能

SQLAlchemy是一款功能丰富的PythonORM,提供广泛的功能,包括数据建模(支持各种数据类型和关系)、强大的查询(支持SQL表达式和子查询)、数据修改(支持批量操作和事务)、连接管理(支持多种后端和连接池)、ORM映射(自定义映射行为)、动态SQL以及其他工具(文档、社区支持、插件和扩展)。
python中SQLAlchemy框架有哪些功能
2024-04-12

在Python程序和Flask框架中使用SQLAlchemy的教程

ORM 江湖 曾几何时,程序员因为惧怕SQL而在开发的时候小心翼翼的写着sql,心中总是少不了恐慌,万一不小心sql语句出错,搞坏了数据库怎么办?又或者为了获取一些数据,什么内外左右连接,函数存储过程等等。毫无疑问,不搞懂这些,怎么都觉得变
2022-06-04

python中SQLAlchemy框架有哪些功能

SQLAlchemy是一个Python的SQL工具和对象-关系映射(ORM)库,它提供了许多功能,包括:数据库连接和会话管理:SQLAlchemy可以通过不同的数据库连接引擎连接到多种数据库,例如MySQL,PostgreSQL,SQLit
python中SQLAlchemy框架有哪些功能
2024-04-09

python中如何使用Django框架

这篇文章将为大家详细讲解有关python中如何使用Django框架,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。第一步:项目的创建与运行第一次使用 Django ,那么你必须要照顾一些初始设
2023-06-20

Python的Flask框架中SQLAlchemy使用时的乱码问题解决

一、问题 这两天在学习使用flask + SQLAlchemy 定制一个web查询页面的demo ,在测试时,发现查询到的结果显示乱码 。这里将解决方法记录下。 二、解决思路 1、flask 程序上定位 flask的文档中提到可以通过设置S
2022-06-04

Python的Django框架中使用SQLAlchemy操作数据库的教程

零、SQLAlchemy是什么? SQLAlchemy的官网上写着它的介绍文字: SQLAlchemy is the Python SQL toolkit and Object Relational Mapper that gives ap
2022-06-04

Python django中如何使用restful框架

restful框架的使用 在使用django进行前后台分离开发时通常会搭配django-rest-framework框架创建RESTful风格的接口API。框架介绍及版本要求可参考官方地址:https://www.django-rest-f
2022-06-02

如何在python中使用bottle框架

这期内容当中小编将会给大家带来有关如何在python中使用bottle框架,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python的数据类型有哪些?python的数据类型:1. 数字类型,包括int(整
2023-06-14

bottle框架如何在python 中使用

这篇文章给大家介绍bottle框架如何在python 中使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。python有哪些常用库python常用的库:1.requesuts;2.scrapy;3.pillow;4.t
2023-06-14

Python的Flask框架中使用Flask-SQLAlchemy管理数据库的教程

使用Flask-SQLAlchemy管理数据库 Flask-SQLAlchemy是一个Flask扩展,它简化了在Flask应用程序中对SQLAlchemy的使用。SQLAlchemy是一个强大的关系数据库框架,支持一些数据库后端。提供高级的
2022-06-04

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录