SQLAlchemy는 Python에서 사용되는 강력한 ORM(Object-Relational Mapping) 라이브러리입니다. 이 라이브러리를 사용하면 Python 코드에서 SQL 쿼리를 작성할 필요없이 객체 지향적인 방식으로 데이터베이스를 조작할 수 있습니다. 이번 글에서는 SQLAlchemy를 설치하는 방법에 대해 알아보겠습니다.
1. 가상환경 설정
SQLAlchemy를 설치하려면 먼저 가상환경(virtual environment)을 설정해야 합니다. 가상환경을 사용하는 것은 권장되는 방법으로, 패키지 충돌을 방지하고 프로젝트 별로 의존성을 분리하는 데 도움이 됩니다.
아래의 Terminal 명령어를 사용하여 새로운 가상환경을 생성합니다.
`bash
$ python -m venv myenv
\
`
가상환경을 활성화하려면 다음 명령어를 실행합니다.
For Windows:
`bash
$ myenv\Scripts\activate
\
`
For Linux/Mac:
`bash
$ source myenv/bin/activate
\
`
2. SQLAlchemy 설치
SQLAlchemy를 설치하려면 pip를 사용합니다. 가상환경을 활성화한 상태에서 다음 명령어를 실행하면 됩니다.
`bash
$ pip install sqlalchemy
\
`
3. SQLAlchemy 사용
이제 SQLAlchemy를 사용하여 Python 코드에서 데이터베이스를 조작할 수 있습니다. 아래는 간단한 예시 코드입니다.
먼저, sqlalchemy
모듈을 가져옵니다.
`python
import sqlalchemy
\
`
다음으로, 데이터베이스에 연결하기 위해 엔진(engine)을 생성합니다.
```python from sqlalchemy import create_engine
engine = create_engine(‘sqlite:///mydatabase.db’, echo=True) ```
위의 코드에서 ‘sqlite:///mydatabase.db’는 SQLite 데이터베이스에 연결하기 위한 URL입니다. 데이터베이스 종류에 따라 URL을 수정해야 할 수 있습니다.
이제 영구적인 데이터베이스 연결이 설정되었습니다. SQLAlchemy를 사용하여 데이터베이스를 쿼리하거나 조작할 수 있습니다.
```python from sqlalchemy import Column, Integer, String from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class User(Base): tablename = ‘users’
id = Column(Integer, primary_key=True)
name = Column(String)
age = Column(Integer)
def __repr__(self):
return f"<User(name='{self.name}', age={self.age})>"
테이블 생성 SQL을 실행합니다.
Base.metadata.create_all(bind=engine)
새로운 사용자 생성
user = User(name=’John Doe’, age=25)
데이터베이스에 새로운 사용자 추가
with engine.begin() as connection: connection.add(user) connection.commit()
사용자 조회
with engine.begin() as connection: users = connection.execute(“SELECT * FROM users”).fetchall() for user in users: print(user) ```
위의 코드는 SQLAlchemy를 사용하여 users
테이블을 생성하고, 데이터베이스에 새로운 사용자를 추가하고, 사용자들을 조회하는 예시입니다.
SQLAlchemy는 더 복잡한 데이터베이스 조작을 위한 다양한 기능을 제공합니다. SQLAlchemy 공식 문서를 참조하여 더 많은 정보를 얻을 수 있습니다.
이제 SQLAlchemy를 설치하고 사용하는 방법에 대해 알아보았습니다. 해당 라이브러리는 강력하고 편리한 기능을 제공하므로 데이터베이스 조작에 사용해보시기 바랍니다.