본문 바로가기

프로그래밍/Python

[요약] 파이썬(Python) SQLite - 테이블 수정/삭제

[요약] 파이썬(Python) SQLite - 테이블 수정/삭제


CRUD를 달성하기 위하여 

  CREATE, READ(SELECT), UPDATE, DELETE를 처리할 수 있다.

테이블 데이터를 수정 / 삭제하기 위한 사용 사례)


# 파이썬 데이터베이스 연동 3 SQLite
# 파이썬 데이터베이스 테이블 수정(Alter, Modify) 및 삭제(Delete)
# CRUD(CREATE, READ, UPDATE, DELETE)

import sqlite3 # 기본 패키지로 포함되어 있음

# DB파일 조회(없으면 새로 DB 생성)
conn = sqlite3.connect('D:/Python_Basic/resource/database.db') # 해당 경로에 database.db DB파일이 생성된다.

# 커서 바인딩
cursor = conn.cursor()

# 데이터 수정1
cursor.execute("UPDATE users SET username = ? WHERE ID=?", ('dklee', 2))
conn.commit() # sqlite3.connect 에서 isolation_level=None 을 사용하지 않으면 강제로 commit 해 주어야 함

# 데이터 수정2
cursor.execute('UPDATE users SET username = :name WHERE id = :id', {'name' : 'goodman', 'id':5})
conn.commit()

# 데이터 수정3
cursor.execute('UPDATE users SET username = "%s" WHERE id = "%s"' % ('badboy', 3))
conn.commit()

# 중간 데이터 확인
for user in cursor.execute('SELECT * from users'):
    print(user)

# 데이터 삭제1(delete)
cursor.execute("DELETE from users WHERE id=?", (2,))
conn.commit()

# 데이터 삭제2(delete)
cursor.execute("DELETE from users WHERE id=:id", {"id":3})
conn.commit()

# 데이터 삭제3(delete)
cursor.execute("DELETE from users WHERE id='%s'" % (5,))
conn.commit()

# 테이블 전체 데이터 삭제
print("users db deleted : ", cursor.execute('DELETE FROM users').rowcount, ' rows')
conn.commit()