iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python中sqlalchemy框架如何使用
  • 367
分享到

Python中sqlalchemy框架如何使用

2023-06-20 15:06:44 367人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

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

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

安装

安装

#进入虚拟环境#执行./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框架如何使用有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网Python频道,感谢大家的支持。

--结束END--

本文标题: Python中sqlalchemy框架如何使用

本文链接: https://www.lsjlt.com/news/298000.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • Python中sqlalchemy框架如何使用
    今天就跟大家聊聊有关Python中sqlalchemy框架如何使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。安装安装#进入虚拟环境#执行./python3 -m&nbs...
    99+
    2023-06-20
  • Python ORM框架中的SQLAlchemy怎么用
    小编给大家分享一下Python ORM框架中的SQLAlchemy怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、SQLAlchemy 介绍1.1 ORM 的概念ORM全称Object Relationa...
    99+
    2023-06-29
  • python中SQLAlchemy框架的用法是什么
    SQLAlchemy是一个Python的ORM(对象关系映射)工具,它提供了一种在Python中操作关系型数据库的方式,并且支持多种...
    99+
    2024-04-09
    python SQLAlchemy
  • python中SQLAlchemy框架怎么安装
    要安装SQLAlchemy框架,可以按照以下步骤进行: 确保你已经安装了Python。你可以从Python官方网站下载并安装最新版...
    99+
    2024-04-09
    python SQLAlchemy
  • 详解SQLAlchemy框架使用手册
    目录安装SQLAlchemy连接数据库创建数据表插入数据查询数据更新数据删除数据结论如果你正在学习Python编程语言,并且想要使用一个简单易用的ORM框架来操作数据库,那么SQLA...
    99+
    2023-05-19
    SQLAlchemy使用
  • python中SQLAlchemy框架有哪些功能
    SQLAlchemy是一个Python的SQL工具和对象-关系映射(ORM)库,它提供了许多功能,包括: 数据库连接和会话管理:...
    99+
    2024-04-09
    python SQLAlchemy
  • Python ORM框架之SQLAlchemy 的基础用法
    目录一、SQLAlchemy 介绍1.1 ORM 的概念1.2 SQLAlchemy介绍1.3 架构1.4 异步1.5 安装二、SQLAlchemy 快速入门2.1 创建配置(可选)...
    99+
    2024-04-02
  • python中如何使用Django框架
    这篇文章将为大家详细讲解有关python中如何使用Django框架,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。第一步:项目的创建与运行第一次使用 Django ,那么你必须要照顾一些初始设...
    99+
    2023-06-20
  • Python ORM数据库框架Sqlalchemy的使用教程详解
    目录概念和数据类型安装连接创建数据库表类(模型)生成数据库表会话增删改查增查改删执行裸sqlwith关闭会话sql建造者模式封装的工具数据库配置文件database.properti...
    99+
    2024-04-02
  • Dataset中SQLAlchemy如何使用
    这篇文章给大家介绍Dataset中SQLAlchemy如何使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Dataset对于操作JSON、CSV文件、NoSQL非常好用。import...
    99+
    2024-04-02
  • bottle框架如何在python 中使用
    这篇文章给大家介绍bottle框架如何在python 中使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。python有哪些常用库python常用的库:1.requesuts;2.scrapy;3.pillow;4.t...
    99+
    2023-06-14
  • 如何在python中使用bottle框架
    这期内容当中小编将会给大家带来有关如何在python中使用bottle框架,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python的数据类型有哪些python的数据类型:1. 数字类型,包括int(整型...
    99+
    2023-06-14
  • Flask SQLALchemy如何使用
    这篇文章主要介绍“Flask SQLALchemy如何使用”,在日常操作中,相信很多人在Flask SQLALchemy如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Flask SQLALchemy如...
    99+
    2023-07-02
  • 如何在Python 中使用loguru日志框架
    如何在Python 中使用loguru日志框架?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。安装pip install loguru输出日志...
    99+
    2023-06-15
  • 如何在Spring框架中使用Python的NumPy API?
    Spring框架是一款非常流行的Java开发框架,它提供了丰富的功能和组件,可以帮助开发者快速构建高质量的Java应用程序。而Python的NumPy API是一款非常强大的科学计算库,它提供了丰富的数学函数和数据结构,可以帮助开发者更加高...
    99+
    2023-09-26
    api numpy spring
  • Golang中GinWeb框架如何使用
    Golang中GinWeb框架如何使用,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。安装Go版本要求: Go1.12及以上1....
    99+
    2024-04-02
  • bootstrap框架中table如何使用
    这篇文章主要讲解了“bootstrap框架中table如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“bootstrap框架中table如何使用”吧!...
    99+
    2024-04-02
  • 如何在Dreamweaver中使用框架
    今天就跟大家聊聊有关如何在Dreamweaver中使用框架,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。  增加新框架      要给框架页面增加新框架,就是像拆分表格的单...
    99+
    2023-06-08
  • Python测试框架pytest如何使用
    本文小编为大家详细介绍“Python测试框架pytest如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python测试框架pytest如何使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。前言pytes...
    99+
    2023-06-30
  • 如何在 Windows 上使用 Python 框架?
    Python 是一种高级编程语言,拥有强大的功能和易于学习的语法,适用于各种应用场景。Python 框架是一种工具,可以加速 Python 应用程序的开发和部署。在 Windows 上使用 Python 框架可以让您更快地编写 Pytho...
    99+
    2023-07-24
    框架 shell windows
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作