파이썬 SQLite, 데이터베이스 생성과 쿼리 실행
파이썬(Python)에서 SQLite를 사용하면 로컬 파일 기반의 경량 데이터베이스를 쉽게 관리할 수 있습니다. SQLite는 설정이 필요 없고, 서버 없이 작동하며, 파이썬 표준 라이브러리로 제공되어 추가 설치가 필요 없습니다. 이 글에서는 SQLite 데이터베이스를 생성하고, 테이블을 만들고, 데이터를 삽입하고, 쿼리를 실행하는 방법을 단계별로 알아보겠습니다.
SQLite 소개
SQLite는 서버 없이 작동하는 내장형 데이터베이스로, 응용 프로그램에 직접 통합됩니다. 가벼운 메모리 소비와 빠른 성능 덕분에 모바일 애플리케이션, 데스크탑 소프트웨어, 임베디드 시스템 등 다양한 분야에서 널리 사용됩니다.
데이터베이스 연결 및 생성
먼저, SQLite 데이터베이스에 연결하는 방법을 살펴보겠습니다. 데이터베이스가 존재하지 않으면 자동으로 생성됩니다.
import sqlite3
# 데이터베이스 연결 (파일이 없으면 생성됨)
conn = sqlite3.connect('example.db')
# 커서 생성
cursor = conn.cursor()
# 연결 종료
conn.close()
테이블 생성하기
데이터베이스에 테이블을 생성하려면 SQL 명령어를 실행해야 합니다. 다음 예제에서는 'users'라는 테이블을 생성합니다.
import sqlite3
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 테이블 생성
cursor.execute('''CREATE TABLE users (
id INTEGER PRIMARY KEY,
name TEXT,
age INTEGER
)''')
conn.commit()
conn.close()
데이터 삽입하기
생성된 테이블에 데이터를 삽입하는 방법을 살펴보겠습니다.
import sqlite3
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 데이터 삽입
cursor.execute("INSERT INTO users (name, age) VALUES ('Alice', 30)")
cursor.execute("INSERT INTO users (name, age) VALUES ('Bob', 25)")
conn.commit()
conn.close()
데이터 조회하기
테이블에서 데이터를 조회하는 방법을 알아보겠습니다.
import sqlite3
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 데이터 조회
cursor.execute("SELECT * FROM users")
rows = cursor.fetchall()
for row in rows:
print(row)
conn.close()
데이터 갱신 및 삭제
데이터베이스의 데이터를 갱신하고 삭제하는 방법을 살펴보겠습니다.
데이터 갱신
import sqlite3
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 데이터 갱신
cursor.execute("UPDATE users SET age = 31 WHERE name = 'Alice'")
conn.commit()
conn.close()
데이터 삭제
import sqlite3
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 데이터 삭제
cursor.execute("DELETE FROM users WHERE name = 'Bob'")
conn.commit()
conn.close()
결론
이 글에서는 파이썬(Python)으로 SQLite를 사용하여 데이터베이스를 생성하고, 테이블을 만들고, 데이터를 삽입하고, 조회하고, 갱신하고, 삭제하는 방법을 살펴보았습니다. SQLite는 설치가 필요 없고, 사용하기 쉬운 데이터베이스 관리 시스템으로, 간단한 프로젝트부터 복잡한 애플리케이션까지 다양한 용도로 활용할 수 있습니다. 파이썬과 함께 SQLite를 사용하여 효과적으로 데이터를 관리해 보세요.
'프로그래밍 언어 > 파이썬' 카테고리의 다른 글
파이썬 ORM 입문, 객체 지향 프로그래밍과 데이터베이스 (0) | 2024.08.17 |
---|---|
파이썬 MySQL 기본 설정과 데이터베이스 연동 (0) | 2024.08.16 |
파이썬(Python) 데이터베이스(DB) 연동 방법 (0) | 2024.08.14 |
파이썬 컨텍스트 매니저, 자동 자원 관리의 핵심 (0) | 2024.08.13 |
파이썬(Python) 데코레이터, 함수 장식과 재사용성 증가 (0) | 2024.08.12 |