파이썬에 sqlite3 모듈 추가하기
pip 사용
pip는 파이썬 패키지를 설치하는 데 사용되는 패키지 관리 도구입니다. 대부분의 최신 파이썬 설치에는 pip가 기본적으로 포함되어 있습니다. sqlite3 모듈을 pip으로 설치하려면 다음 명령을 실행합니다.
pip install sqlite3
수동 설치
pip가 없는 경우 또는 pip를 사용하는 데 어려움이 있는 경우 sqlite3 모듈을 수동으로 설치할 수 있습니다.
다음 단계를 수행합니다.
- 다운로드한 파일을 추출합니다.
- 추출된 폴더에서
python setup.py install
명령을 실행합니다.
sqlite3 모듈 사용 확인
sqlite3 모듈이 설치되었는지 확인하려면 다음 코드를 실행합니다.
import sqlite3
try:
# 데이터베이스에 연결합니다.
conn = sqlite3.connect('test.db')
print("SQLite 모듈이 설치되었습니다.")
except Exception as e:
print("SQLite 모듈 설치 오류:", e)
위 코드를 실행하면 sqlite3 모듈이 설치되었는지 확인할 수 있습니다.
참고:
- sqlite3 모듈은 Python 2.5 이상에서 사용할 수 있습니다.
주의:
- SQLite는 관계형 데이터베이스이지만 NoSQL 데이터베이스처럼 동작합니다.
- 트랜잭션은 명시적으로 시작하고 커밋해야 합니다.
- 기본 키는 자동으로 생성되지 않습니다.
- JOIN 쿼리는 다소 복잡할 수 있습니다.
예제 코드: SQLite 데이터베이스 만들기 및 데이터 삽입
import sqlite3
# 데이터베이스 연결
conn = sqlite3.connect('test.db')
# 커서 생성
cursor = conn.cursor()
# 테이블 생성
cursor.execute("""
CREATE TABLE users (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
email TEXT UNIQUE NOT NULL
)
""")
# 사용자 데이터 삽입
cursor.execute("INSERT INTO users (name, email) VALUES (?, ?)", ("바이올렛", "[email protected]"))
cursor.execute("INSERT INTO users (name, email) VALUES (?, ?)", ("데이지", "[email protected]"))
# 데이터베이스 커밋
conn.commit()
# 데이터베이스 연결 종료
conn.close()
이 코드는 다음과 같은 작업을 수행합니다.
test.db
라는 이름의 SQLite 데이터베이스에 연결합니다.- 커서를 생성합니다. 커서는 데이터베이스와 상호 작용하는 데 사용됩니다.
users
라는 이름의 테이블을 만듭니다. 이 테이블에는id
,name
,email
이라는 세 개의 열이 있습니다.id
열은 기본 키이며 자동으로 증가합니다.name
열은 필수이며 텍스트입니다.email
열은 필수이며 텍스트이며 고유해야 합니다.- 두 명의 사용자("바이올렛", "[email protected]" 및 "데이지", "[email protected]")를
users
테이블에 삽입합니다. - 데이터베이스 커밋합니다. 이는 변경 사항을 영구적으로 저장합니다.
- 데이터베이스 연결을 종료합니다.
이 코드는 기본적인 예시이며, 더 복잡한 데이터베이스 작업을 수행하도록 쉽게 확장할 수 있습니다.
추가 예제
다음은 SQLite에서 수행할 수 있는 몇 가지 다른 작업에 대한 예제 코드입니다.
데이터 조회:
cursor.execute("SELECT * FROM users")
for row in cursor.fetchall():
print(row)
데이터 업데이트:
cursor.execute("UPDATE users SET name = '데이지 수정' WHERE email = '[email protected]'")
conn.commit()
cursor.execute("DELETE FROM users WHERE id = 1")
conn.commit()
SQLite 모듈 설치 대체 방법
가상 환경 사용
가상 환경은 특정 프로젝트에 대한 Python 패키지의 고립된 설치를 제공합니다. 가상 환경을 사용하면 프로젝트에 필요한 패키지만 설치할 수 있으며, 시스템 전체의 Python 설치에 영향을 미치지 않습니다.
가상 환경을 만드는 방법은 여러 가지가 있습니다. 가장 일반적인 방법은 다음과 같습니다.
- venv 사용 (Python 3.3 이상):
python3 -m venv myvenv
- virtualenv 사용:
pip install virtualenv
virtualenv myvenv
가상 환경을 활성화한 후 다음 명령을 사용하여 sqlite3 모듈을 설치할 수 있습니다.
pip install sqlite3
macOS 사용
macOS에는 기본적으로 Python이 포함되어 있으며, Homebrew라는 패키지 관리 도구도 함께 설치됩니다. Homebrew를 사용하여 sqlite3 모듈을 다음과 같이 설치할 수 있습니다.
brew install sqlite3
Linux 사용
대부분의 Linux 배포판에는 기본적으로 Python이 포함되어 있습니다. 패키지 관리 시스템을 사용하여 sqlite3 모듈을 설치할 수 있습니다. 설치 명령은 배포판마다 다를 수 있지만 일반적으로 다음과 같습니다.
- Debian/Ubuntu:
sudo apt install python3-sqlite3
- Fedora/CentOS:
sudo dnf install python3-sqlite3
- Arch Linux:
sudo pacman -S python-sqlite3
Docker 사용
Docker는 애플리케이션과 해당 종속성을 포함하는 컨테이너를 만드는 데 사용할 수 있는 플랫폼입니다. Docker 이미지를 사용하여 sqlite3 모듈이 포함된 Python 환경을 만들 수 있습니다.
다음은 Docker 이미지를 사용하여 SQLite 데이터베이스를 만드는 방법의 간단한 예입니다.
docker run -it --name my-sqlite-container python:3.10 \
bash -c "pip install sqlite3 && sqlite3 test.db && ./.venv/bin/python example.py"
이 명령은 다음을 수행합니다.
python:3.10
이미지를 실행합니다.my-sqlite-container
라는 이름의 컨테이너를 만듭니다.- 컨테이너 내에서
pip install sqlite3
명령을 실행하여 sqlite3 모듈을 설치합니다. - 컨테이너 내에서
sqlite3 test.db
명령을 실행하여test.db
라는 이름의 SQLite 데이터베이스를 만듭니다. - 컨테이너 내에서
python example.py
명령을 실행하여 예제 코드를 실행합니다.
이것은 Docker를 사용하여 SQLite 데이터베이스를 만드는 방법의 간단한 예일 뿐입니다. Docker를 사용하여 더 복잡한 작업을 수행할 수 있습니다.
python sqlite pip