Galería de mapas mentales SQLAlchemy
SQLAlchemy에 대한 마인드맵입니다. 주요 내용은 예외 처리, 성능 최적화, 관계, 데이터 삭제, 데이터 업데이트, 데이터 쿼리, 데이터 삽입, 데이터베이스 매핑, 모델 선언, 데이터베이스 연결, 설치, 소개입니다.
VBA
파이썬 튜토리얼
프로그래밍 C 알고리즘
RUST 2판 마스터하기
SQL 학습 요약
SQLAlchemy
소개
SQLAlchemy는 Python SQL 툴킷이자 ORM 프레임워크입니다.
포괄적인 데이터베이스 운영 및 ORM 기능 제공
MySQL, PostgreSQL, SQLite 등과 같은 여러 데이터베이스를 지원합니다.
설치하다
pip를 사용하여 SQLAlchemy 설치
설치 명령: pip install SQLAlchemy
데이터베이스에 연결
create_engine 함수를 사용하여 데이터베이스 연결 생성
예: 엔진 = create_engine('mysql://user:password@localhost/dbname')
모델 선언
declarative_base 함수를 사용하여 모델 기본 클래스 생성
클래스를 사용하여 모델 기본 클래스를 상속하고 속성을 정의합니다.
예: from sqlalchemy import 열, 정수, 문자열
클래스 사용자(기본):
__테이블 이름__ = '사용자'
id = 컬럼(정수, Primary_key=True)
이름 = 컬럼(문자열)
데이터베이스에 매핑
Base.metadata.create_all()을 사용하여 모델을 데이터베이스에 매핑
예: Base.metadata.create_all(엔진)
데이터 삽입
session.add()를 사용하여 세션에 새 개체를 추가합니다.
***mit()를 사용하여 세션을 커밋합니다.
예: sqlalchemy.orm에서 세션 메이커 가져오기
세션 = 세션메이커(바인드=엔진)
세션 = 세션()
new_user = 사용자(이름='John')
세션.추가(new_user)
***미트()
데이터 쿼리
session.query()를 사용하여 쿼리 객체 생성
쿼리 객체에 필터 메소드를 사용하여 쿼리
예: users = session.query(User).filter_by(name='John').all()
데이터 업데이트
쿼리 객체의 업데이트 메서드를 사용하여 업데이트
예: user = session.query(User).filter_by(name='John').first()
user.name = '제인'
데이터 삭제
쿼리 객체에 대해 삭제 메소드를 사용하여 삭제
예: user = session.query(User).filter_by(name='Jane').first()
session.delete(사용자)
관계
일대일 관계
ForeignKey를 사용하여 일대일 관계 정의
예: sqlalchemy에서 ForeignKey 가져오기
address_id = 열(정수, ForeignKey('addresses.id'))
일대다 관계
ForeignKey를 사용하여 일대다 관계 정의
다대다 관계
연관 테이블을 사용하여 다대다 관계 정의
예: from sqlalchemy import 테이블, 열, 정수, ForeignKey
users_addresses = 테이블('users_addresses',
베이스.메타데이터,
열('user_id', Integer, ForeignKey('users.id')),
열('address_id', 정수, ForeignKey('addresses.id'))
)
성능 최적화
하위 쿼리 대신 조인 쿼리 사용
단일 삽입 대신 일괄 삽입 사용
인덱스를 사용하여 쿼리 속도 향상
예외 처리
Try/Exception을 사용하여 데이터베이스 작업 예외 처리
예: 시도해 보세요:
e와 같은 예외를 제외하고:
세션.롤백()
인쇄(e)