[파이썬] SQLite 데이터베이스 자동 커밋

SQLite는 기본적으로 각 SQL 문을 자동으로 커밋하지 않습니다. 이는 여러 개의 SQL 문을 실행할 때 일관성과 데이터 무결성을 보장하는 데 도움이 됩니다. 하지만 때로는 프로그램이 데이터베이스 변경 사항을 즉시 커밋하도록 하고 싶을 수도 있습니다.

Python에서 SQLite 데이터베이스를 자동으로 커밋하는 방법을 알아보겠습니다.

import sqlite3

conn = sqlite3.connect('database.db')

# 커서 생성
cursor = conn.cursor()

# 커밋 자동화를 위해 isolation_level을 None으로 설정
conn.isolation_level = None

# SQL 문 실행
cursor.execute("INSERT INTO users (name, age) VALUES ('John Doe', 25)")

# 자동으로 커밋됨

위의 예제에서는 sqlite3.connect() 함수를 사용하여 SQLite 데이터베이스에 연결합니다. 그런 다음 cursor() 함수를 사용하여 커서를 만듭니다.

다음으로, isolation_level 속성을 None으로 설정하여 자동 커밋을 활성화합니다.

이제 execute() 함수를 사용하여 SQL 문을 실행하고 데이터베이스에 데이터를 추가합니다.

이러한 접근 방식을 사용하면 모든 SQL 문이 실행될 때마다 자동으로 커밋되어 데이터베이스에 변경 사항이 실시간으로 반영됩니다.

SQLite 데이터베이스 자동 커밋을 사용하는 것은 편리하며, 데이터베이스 관리를 보다 쉽게 할 수 있습니다. 다만, 주의해야 할 점은 자동 커밋을 사용할 경우 롤백(rollback)을 할 수 없으므로 신중하게 사용해야 합니다.