软件测试|SQLAlchemy环境安装与基础使用

简介

SQLAlchemy是一个强大的Python库,用于与关系型数据库进行交互。它提供了高度抽象的对象关系映射(ORM)工具,允许使用Python对象来操作数据库,而不必编写原生SQL查询。本文将介绍如何安装SQLAlchemy并进行一些基本的用法示例。

安装SQLAlchemy

SQLAlchemy是python的第三方库,我们可以使用pip命令来安装这个库,安装命令如下:

pip install SQLAlchemy

注:SQLAlchemy需要python3.6或更新版本的python才可以安装

安装完SQLAlchemy后,我们还需要安装驱动程序,SQLAlchemy本身并不包含数据库驱动程序,我们需要根据数据库选择适当的驱动。例如,如果我们使用MySQL,可以安装mysql-connector-python

pip install mysql-connector-python

注:如果我们使用的是SQLite,则无需额外安装驱动程序,因为SQLite已经包含在Python标准库中

连接数据库

在使用SQLAlchemy之前,我们需要建立与数据库的连接。这需要配置数据库的连接字符串,其中包括数据库类型、主机、端口、用户名和密码。下面是一个连接到SQLite数据库的示例:

  1. from sqlalchemy import create_engine

  2. # SQLite连接字符串,数据库文件名为mydatabase.db

  3. db_url = "sqlite:///mydatabase.db"

  4. engine = create_engine(db_url)

  5. # 建立连接

  6. connection = engine.connect()

新建表格

在数据库中创建表格需要使用SQLAlchemydeclarative_base和表格定义类。下面是一个创建用户表格的示例:

  1. from sqlalchemy import Column, Integer, String

  2. from sqlalchemy.ext.declarative import declarative_base

  3. Base = declarative_base()

  4. class User(Base):

  5. __tablename__ = 'users'

  6. id = Column(Integer, primary_key=True)

  7. username = Column(String(50))

  8. email = Column(String(100))

  9. # 创建表格

  10. Base.metadata.create_all(engine)

插入数据

使用SQLAlchemy,我们可以轻松地插入数据。下面是一个插入用户数据的示例:

  1. from sqlalchemy.orm import sessionmaker

  2. # 创建一个会话

  3. Session = sessionmaker(bind=engine)

  4. session = Session()

  5. # 插入一条用户记录

  6. new_user = User(username='theshy', email='theshy@ig2018.com')

  7. session.add(new_user)

  8. session.commit()

查询数据

我们可以使用SQLAlchemy进行各种查询操作。下面是一个简单的查询用户数据的示例:

  1. # 查询所有用户

  2. all_users = session.query(User).all()

  3. # 根据条件查询

  4. john_doe = session.query(User).filter_by(username='theshy').first()

更新和删除数据

更新和删除数据也很容易。示例如下:

  1. # 更新数据

  2. john_doe.email = 'theshy@wbg2023.com'

  3. session.commit()

  4. # 删除数据

  5. session.delete(theshy)

  6. session.commit()

SQLAlchemy是一个功能强大的Python库,用于管理关系型数据库。本文中,我们介绍了如何安装SQLAlchemy,建立数据库连接,创建表格,插入、查询、更新和删除数据,希望本文可以帮到大家。

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助

视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-02-21 03:00:02       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-21 03:00:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-21 03:00:02       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-21 03:00:02       20 阅读

热门阅读

  1. 2024-2-19

    2024-02-21 03:00:02       32 阅读
  2. Vue <el-checkbox-group>多选框回显问题

    2024-02-21 03:00:02       35 阅读
  3. 各直播协议优缺点

    2024-02-21 03:00:02       28 阅读
  4. 牛客小白月赛87 D 小苯的IDE括号问题(hard)

    2024-02-21 03:00:02       40 阅读
  5. 抛弃for循环遍历list

    2024-02-21 03:00:02       33 阅读
  6. 2179. 圆桌问题(最大流,二分图多重匹配)

    2024-02-21 03:00:02       37 阅读
  7. 用Kali Linux自带的MSF远控windows系统

    2024-02-21 03:00:02       30 阅读