728x90
반응형

데이터베이스/ORM 5

SQLAlchemy 사용

1) 패키지 설치 pip install sqlalchemy # 1.3 버전 pip install --pre sqlalchemy # 1.4Beta 버전 2) 데이터베이스와의 연결 코어의 엔진으로 연결 : 추상화를 통해(Pool) DBAPI 사용가능해짐 Connection Pooling from sqlalchemy import create_engine engine = create_engine("데이터베이스 주소") # 예시 engine = create_engine("sqlite:///:memory:") ./// - 디렉토리 상대적 경로 .//// - 절대적 경로 :memory: - 스토리지가 아닌 메모리에서 임시적으로 데이터 베이스 사용. 접속 끊는 순간 데이터베이스 날아감. 3) Mapping 매핑 데이터..

SQLAlchemy 정의, 구조

ORM은 선택이며 반드시 사용해야 하는 것이 아니며 SQLAlchemy가 ORM의 전부를 나타내는 것 또한 아님을 주의. SQLAlchemy는 파이썬에서 사용할 수 있는 ORM 라이브러리 중 하나이며 다양한 기능을 제공합니다. 다른 ORM 라이브러리와 다른 점 중 하나는 자체적으로 스키마를 생성하지 않는 다는 것 입니다(사용자가 정의한 DDL 제외). 그렇기 때문에 어플리케이션 코드나 데이터베이스 시스템에 간섭하지 않는 다는 특징이 있습니다. 1. SQLAlchemy 구조 SQLAlchemy는 크게 'Core'와 'ORM'으로 나뉘어져 있습니다. 1) Core 아래의 코어의 기능들만 봐도 Core는 큰 역할을 하고 있고 단순히 데이터베이스와 프로그래밍 언어를 연결해주고 SQL 쿼리문을 변경하는 것이 아닌..

ORM 장점과 단점, 언제 사용?

장점 - 현재 쓰는 언어만 사용해도 됨. - 데이터베이스 시스템으로부터 분리가 됨. -> MYSQL, PostgreSQL 등 원하는 시스템 사용 가능. - 라이브러리마다 다양한 기능 지원 단점 - 데이터베이스와 바로 연결하는 것보다 초기설정이 더 많아지거나 복잡해질 수 있음. - 내부 동작에 대한 충분한 이해가 없는 경우 문제 해결이 힘듦. - 데이터베이스에 직접 쿼리문을 보내는 것이 아니기 때문에 성능 저하가 발생함. - 데이터베이스 복잡도를 데이터베이스 시스템에서 어플리케이션 코드로 옮기게 됨. - Object-Relaional Impedance Mismatch (임피던스 불일치) : 관계형 테이블과 애플리케이션 객체간에 데이터를 이동할 때 발생하는 차이, 어려움을 포괄하는 용어 객체를 사용하는 방식..

ORM(Object-Relational Mapper)

ORM (Object-Relational Mapper)은 관계형 데이터베이스 테이블에 저장된 데이터를 응용 프로그램 코드에서 더 일반적으로 사용되는 개체로 자동 전송하는 코드 라이브러리입니다. 위 그림과 같이 SQL 언어의 관계형 데이터베이스와 프로그래밍 코드 사이의 다리 역할을 해준다고 생각하면 됩니다. ORM은 개발자가 SQL 대신 Python 코드를 작성하여 데이터베이스에서 데이터와 스키마를 생성, 읽기, 업데이트 및 삭제와 같은 일을 수행할 수 있도록 합니다. 물론 알맞은 데이터베이스 엔진을 활용해 직접 SQL 쿼리문을 보내는 방법도 있지만, ORM을 사용하면 개발자는 SQL 또는 stored procedures를 작성하지 않고 데이터베이스 작업에 익숙한 프로그래밍 언어를 사용할 수 있습니다. 즉..

ORM 관련 영상 및 자료

1. full stack python - ORM 뿐만 아니라 database sql Django DevOps 등 다양한 개발 관련 자료 www.fullstackpython.com/object-relational-mappers-orms.html Object-relational Mappers (ORMs) Object-relational mappers (ORMs) bridge relational databases and data represented in Python code. www.fullstackpython.com 2. SQLAlchemy 공식문서 사이트 - ORM 사용법 등 docs.sqlalchemy.org/en/14/ SQLAlchemy Documentation — SQLAlchemy 1.4 Doc..

728x90
반응형