Python SQLAlchemy 실용적인 팁: 초보자부터 전문가까지

王林
풀어 주다: 2024-02-25 08:00:57
앞으로
778명이 탐색했습니다.

Python SQLAlchemy 实战秘籍:从新手到专家

sql연금술 소개

SQLAlchemy는 python오픈 소스 개체 관계형 매핑(ORM) 도구로, 데이터베이스에서 작동하는 간단한 Python 코드를 통해 Python 개체를 데이터베이스의 테이블에 쉽게 매핑하는 데 도움이 됩니다. . SQLAlchemy는 Mysql, postgresql, SQLite 등을 포함한 다양한 데이터베이스를 지원합니다.

SQLAlchemy의 기본 사용법

1. SQLAlchemy를 설치하세요

먼저 Python 환경에 SQLAlchemy를 설치해야 합니다. 다음 명령을 사용하여 설치할 수 있습니다:

으아악

2. 데이터베이스 엔진 만들기

SQLAlchemy를 사용하기 전에 먼저 데이터베이스 엔진을 생성해야 합니다. 데이터베이스 엔진은 SQLAlchemy가 데이터베이스와 통신하는 데 사용하는 인터페이스입니다. 다음 코드를 사용하여 데이터베이스 엔진을 만들 수 있습니다.

으아악

그 중 mysql+pymysql 是数据库的类型,userpasswordhostportdatabase은 각각 데이터베이스의 사용자 이름, 비밀번호, 호스트, 포트 번호 및 데이터베이스 이름입니다.

3. 세션 만들기

Session은 SQLAlchemy가 데이터베이스와 상호 작용하는 데 사용하는 개체입니다. 다음 코드를 사용하여 세션을 생성할 수 있습니다:

으아악

4. 데이터베이스 운영

세션을 사용하여 쿼리, 삽입, 업데이트, 삭제 등 데이터베이스에 대한 다양한 작업을 수행할 수 있습니다. 다음은 일반적으로 사용되는 몇 가지 작업입니다.

4.1 데이터 쿼리

다음 코드를 사용하여 데이터를 쿼리할 수 있습니다.

으아악

그 중 User 是您要查询的表,filter() 方法用于过滤查询结果,all() 메소드를 사용하여 모든 쿼리 결과를 얻을 수 있습니다.

4.2 데이터 삽입

다음 코드를 사용하여 데이터를 삽입할 수 있습니다.

으아악

그 중 User 是您要插入数据的表,new_user 是您要插入的新数据,add() 方法用于将新数据添加到会话中,commit() 메소드는 세션 내 모든 수정 사항을 커밋하는 데 사용됩니다.

4.3 데이터 업데이트

다음 코드를 사용하여 데이터를 업데이트할 수 있습니다.

으아악

그 중 User 是您要更新数据的表,filter() 方法用于过滤查询结果,first() 方法用于获取第一个查询结果,age 是您要更新的字段,commit() 메소드는 세션 내 모든 수정 사항을 커밋하는 데 사용됩니다.

4.4 데이터 삭제

다음 코드를 사용하여 데이터를 삭제할 수 있습니다:

으아악

그 중 User 是您要删除数据的表,filter() 方法用于过滤查询结果,first() 方法用于获取第一个查询结果,delete() 方法用于删除数据,commit() 메소드는 세션 내 모든 수정 사항을 커밋하는 데 사용됩니다.

SQLAlchemy의 고급 사용

1. 관계 매핑

SQLAlchemy를 사용하면 Python 개체를 데이터베이스의 테이블에 쉽게 매핑할 수 있습니다. 다음 코드를 사용하여 관계 맵을 정의할 수 있습니다.

으아악

그 중 UserAddress 是您要映射的两个表,__tablename__ 属性指定了表的名称,id 属性指定了主键,nameageaddress 属性指定了表的字段。ForeignKey() 函数用于指定外键关系。relationship()함수는 관계 매핑을 정의하는 데 사용됩니다.

2. 쿼리최적화

SQLAlchemy는 쿼리 성능을 향상시키는 데 도움이 되는 다양한 쿼리 최적화 기술을 제공합니다. 다음은 일반적으로 사용되는 쿼리 최적화 기술입니다.

2.1 일괄 쿼리

일괄 쿼리를 사용하여 쿼리 성능을 향상할 수 있습니다. 일괄 쿼리는 한 번에 여러 데이터 행을 쿼리할 수 있습니다. 다음 코드를 사용하여 일괄 쿼리를 수행할 수 있습니다.

으아악

그 중 User 是您要查询的表,filter() 方法用于过滤查询结果,all() 메소드를 사용하여 모든 쿼리 결과를 얻을 수 있습니다.

2.2 index

사용

인덱스를 사용하여 쿼리 성능을 향상시킬 수 있습니다. 인덱스는 데이터베이스가 쿼리하려는 데이터를 빠르게 찾는 데 도움이 됩니다. 다음 코드를 사용하여 색인을 생성할 수 있습니다:

으아악

여기서 user 是您要创建索引的表,age는 색인을 생성하려는 필드입니다.

3. 사무경영

SQLAlchemy는 트랜잭션 관리를 지원합니다. 트랜잭션은 데이터베이스 작업이 모두 성공하거나 모두 실패하도록 보장하는 데 도움이 됩니다. 다음 코드를 사용하여 거래를 시작할 수 있습니다:

으아악

다음 코드를 사용하여 거래를 제출할 수 있습니다:

session.commit()
로그인 후 복사

您可以使用以下代码来回滚一个事务:

session.rollback()
로그인 후 복사

结语

SQLAlchemy 是一个功能强大且易于使用的 ORM 工具。它可以帮助您轻松地将 Python 对象与数据库中的表进行映射,并通过简单的 Python 代码来对数据库进行操作。本文介绍了 SQLAlchemy 的基本使用和进阶使用。希望您能通过本文学习到 SQLAlchemy 的使用技巧,并将其应用到您的实际项目中。

위 내용은 Python SQLAlchemy 실용적인 팁: 초보자부터 전문가까지의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:lsjlt.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿