데이터베이스/Database

Database, ORM, SQLAlchemy, Flask 간단 정리

DS지니 2021. 3. 27. 17:44
728x90
반응형
알아야 할 프로그래밍 기본 단어 : 쿼리, SQL, Application, Framwork

 

데이터베이스는 애플리케이션 부분에서 아주 중요한 부분이다. 바로 동력의 원천인 데이터를 저장 하기 때문이다.

 

데이터베이스에서는 SQL(Structured Query Language)을 사용해서 쿼리를 수행하고 내부의 데이터를 조종(?), 조작한다.

 

원래는 전용 SQL 도구를 사용해 쿼리를 수행했지만, 지금은 애플리케이션 안에서 SQL을 사용하는 방식(ORM)이라는 것도 생겼다.

 

ORM(Object Relational Mapper). 처음에 들을 때 너무 생소하고, 정의된 글을 아무리 읽어도 머릿속에 100% 쏙쏙 박히지 않았다. 하지만 지금 흐름을 정리하니 이해가 된다.

 

요약 : 애플리케이션을 만드려면 데이터가 필요함. 데이터는 데이터베이스에서 관리함. 데이터베이스에서 쿼리로 원하는 데이터를 쏙쏙 빼오려면 원래 SQL Tool 사용이 필요했지만, 지금은 애플리케이션 안에서 sql 사용가능한 ORM기능이 있음 ! 

 

ORM을 통해 실제로 쿼리를 실행할 필요없이 프로그래밍 방식으로 안전하고 쉽고 편리하게 애플리케이션 안에서 데이터베이스에 연결할 수 있다. 이 ORM 중 하나로 SQLAlchemy가 있다.

SQLAlchemy 사용방법

ORM은 선택이며 반드시 사용해야 하는 것이 아니며 SQLAlchemy가 ORM의 전부를 나타내는 것 또한 아님을 주의.
SQLAlchemy는 파이썬에서 사용할 수 있는 ORM 라이브러리 중 하나이며 다양한 기능을 제공합니다.
다른 ORM 라이브러리와 다른 점 중 하나는 자체적으로 스키마를 생성하지 않는다는 것 (사용자가 정의한 DDL 제외).
그렇기 때문에 애플리케이션 코드나 데이터베이스 시스템에 간섭하지 않는 다는 특징이 있습니다.

 

웹 애플리케이션을 만들기 위해서는 어떤 웹 프레임워크를 사용할지도 생각해야한다.

 

웹 프레임워크란 웹 어플리케이션을 개발할 수 있도록 Web Service와 Web API 등을 제공하고 웹 개발 과 배포를 할 수 있는 특정 방법을 제공하는 프로그램이다. Flask는 그중에도 Micro Web Framwork인 최소한의 도구를 모아놓은 웹 프레임워크이다. Flask가 light한 기능이라면 Django라는 heavy한 프로그램도 있다.

Flask 사용방법 

 

 

 

728x90
반응형