데이터베이스¶
DB-API¶
파이썬 데이베이스 API (DB-API)는 파이썬 데이터베이스 접근 모듈을 위한 표준 인터페이스를 정의합니다. PEP 249 에 문서화가 되어 있습니다. sqlite3, psycopg, 그리고 mysql-python 와 같이 거의 모든 파이썬 데이터베이스 모듈이 이 인터페이스를 따릅니다.
이 모듈이 어떻게 이 인터페이스를 따라 동작하는지 확인하고 싶으시다면 아래 튜토리얼을 확인해보세요. 요것 과 이것.
SQLAlchemy¶
SQLAlchemy 는 일반적으로 사용되는 데이터베이스 툴킷입니다. 다른 데이터베이스 라이브러리와 달리 ORM 레이어를 제공할 뿐만 아니라 SQL 없이도 데이터베이스와 무관하게 코드를 작성할 수 있도록 일반화 된 API를 제공합니다.
$ pip install sqlalchemy
Records¶
Records 는 미니멀리스트 SQL 라이브러리입니다. 다양한 데이터베이스에 raw SQL 쿼리를 날릴 수 있도록 디자인되었습니다. 데이터는 프로그래밍방식으로 사용될 수도 있고 여러 유용한 데이터 포맷응로도 추출할 수 있습니다.
$ pip install records
SQL 데이터를 추출할 수 있는 커맨드라인 도구를 포함하고 있습니다.
PugSQL¶
PugSQL 은 파라미터를 집어넣어 SQL을 직접 작성하기 위한 간단한 파이썬 인터페이스입니다. ORM은 절대 아니지만 파이썬으로 깔끔한 인터페이스를 제공합니다.
$ pip install pugsql
쟝고(Django) ORM¶
쟝고 ORM은 Django 가 데이터베이스에 접근하기 위해 사용하는 인터페이스입니다.
이는 모델 , 즉 파이썬으로 데이터를 조직하기 쉽게 해주는 추상화라는 아이디어에 기반하고 있습니다.
기본 지식:
- 각 모델은 django.db.models.Model. 의 하위 클래스인 파이썬 클래스이다.
- 모델의 각 속성은 데이터베이스의 필드를 나타낸다.
- 쟝고는 자동으로 만들어진 데이터베이스 엑세스 API를 제공합니다. Making queries 문서를 확인하세요.
피위(peewee)¶
peewee 는 파이썬 2.6 이상을 지원하면서 3.2 이상도 지원하는 가벼운 ORM입니다. SQLite, MySQL, 그리고 PostgreSQL을 기본적으로 지원합니다. model layer 는는 쟝고 ORM과과 비슷합니다다. SQL 비스무리한 메소드 로로 데이터를를 쿼리할 수도도 있습니다. SQLite, MySQL, PostgreSQL을 기본 지원하며 다양한 애드온 도 사용 가능합니다.