[파이썬] SQLite 데이터 추가와 삽입

SQLite는 경량이면서도 강력한 관계형 데이터베이스 관리 시스템(RDBMS)입니다. Python에서 SQLite를 사용하여 데이터를 추가하고 삽입하는 방법을 알아보겠습니다.

데이터베이스 연결

먼저, 데이터베이스에 연결해야 합니다. Python의 sqlite3 모듈을 사용하여 SQLite 데이터베이스에 연결할 수 있습니다.

import sqlite3

# 데이터베이스 파일 생성 또는 연결
conn = sqlite3.connect('mydatabase.db')

위의 코드에서는 mydatabase.db라는 이름의 데이터베이스 파일에 연결하고 있습니다. 필요에 따라 데이터베이스 파일의 경로와 이름을 수정하세요.

테이블 생성

데이터를 추가하려면 먼저 테이블을 생성해야 합니다. CREATE TABLE 문을 사용하여 테이블을 생성할 수 있습니다. 예를 들어, users라는 이름의 테이블을 생성하는 코드는 다음과 같습니다.

# 테이블 생성
conn.execute('''CREATE TABLE users
                (id INT PRIMARY KEY NOT NULL,
                name TEXT NOT NULL,
                age INT NOT NULL);''')

위의 코드에서는 users 테이블에 id, name, age 세 가지 열(column)을 정의하고 있습니다.

데이터 추가

이제 데이터를 추가해보겠습니다. INSERT INTO 문을 사용하여 데이터를 추가할 수 있습니다. 예를 들어, 다음과 같이 사용자 정보를 추가하는 코드를 작성할 수 있습니다.

# 데이터 추가
conn.execute("INSERT INTO users (id, name, age) VALUES (1, 'John Doe', 25)")
conn.execute("INSERT INTO users (id, name, age) VALUES (2, 'Jane Smith', 30)")

위의 코드에서는 users 테이블에 두 명의 사용자 정보를 추가하고 있습니다.

데이터 삽입

SQLite에서 데이터를 삽입하려면 먼저 INSERT INTO 문을 사용하여 데이터를 삽입할 테이블을 지정해야 합니다. 예를 들어, users 테이블에 사용자 정보를 삽입하는 코드는 다음과 같습니다.

# 데이터 삽입
data = [(3, 'David Brown', 28), (4, 'Emily Davis', 35)]
conn.executemany("INSERT INTO users (id, name, age) VALUES (?, ?, ?)", data)

위의 코드에서는 users 테이블에 두 명의 사용자 정보를 한 번에 삽입하고 있습니다. executemany() 메서드를 사용하여 여러 개의 데이터를 한 번에 삽입할 수 있습니다.

데이터 저장 및 연결 종료

마지막으로, 모든 데이터를 추가하고 삽입한 후 데이터베이스에 변경 사항을 저장하고 데이터베이스 연결을 종료해야 합니다.

# 데이터 저장 및 연결 종료
conn.commit()
conn.close()

위의 코드에서는 commit() 메서드를 사용하여 변경 사항을 데이터베이스에 저장하고, close() 메서드를 사용하여 데이터베이스 연결을 종료합니다.

이제 Python에서 SQLite 데이터베이스에 데이터를 추가하고 삽입하는 방법을 알게 되었습니다. SQLite를 사용하여 데이터베이스를 관리하는 데에는 더 많은 기능과 옵션이 있습니다. 추가적인 기능을 학습하고 활용하여 데이터베이스를 효율적으로 다룰 수 있습니다.