SQLite 관리 프로그램 설치와 파이썬 sqlite 예제
글. 오상문 sualchi@daum.net
파이썬을 설치하면 sqlite 기본 모듈을 이용하여 sqlite DB를 생성하거나 자료를 저장, 수정, 제거, 가져오기 등의 작업을 할 수 있습니다. 다음은 파이썬에서 sqlite를 사용하여 DB와 테이블을 만들어 사용하는 예제입니다.
import sqlite3
createTABLE = True # True: 처음 실행시, False: 테이블이 이미 존재함
# 데이터베이스 파일 연결(없으면 생성)
con = sqlite3.connect('db.sqlite')
# 쿼리 핸들러
cur = con.cursor()
# friends 테이블이 없어서 새로 만드는 경우
if createTABLE == True:
# 데이터베이스 테이블 생성 (한번만 하면 됨)
cur.execute('''create table friends(
name varchar(20),
birthday date,
tel varchar(15))''')
# 테이블에 자료 삽입
for i in range(21):
cur.execute('insert into friends values(?, ?, ?)',
('홍길동', '1500-05-09', '010-1234-000'+str(i)))
# con.commit()
# 테이블에서 자료 가져오기
cur.execute('select * from friends where name = ?', ("홍길동",))
result = cur.fetchall() # 모든 줄 가져오기
#result = cur.fetchone() # 한 줄 가져오기
#result = cur.fetchmany(size=5) # 다섯 줄 가져오기
#for row in result:
# print(row)
# 전화번호가 0001로 끝나면 이름을 홍길순으로 변경
cur.execute("update friends set name=? where tel=?",
("홍길순", "010-1234-0001"))
#con.commit()
# 테이블에서 자료 가져오기
cur.execute('select * from friends')
result = cur.fetchall()
for row in result:
print(row)
만약 sqlite DB 파일을 쉘 프롬프트에서 확인하거나 관리하고 싶으면 아래 링크에서 윈도우용 sqlite Tool을 다운로드 받아서 C:\sqlite 경로에 풀어줍니다. 그리고 시스템 환경변수 PATH에 이 경로를 추가합니다.
참고로 sqlite 경로에는 sqlite3.exe 파일이 존재합니다. 이 툴을 이용하여 DB를 관리할 수 있습니다.
파이썬 예제가 있는 폴더에 가면(예제를 실행해서 DB를 만들었다면) db.sqlite 파일이 보일 겁니다.
명령창(윈도우키+R)에서 cmd를 입력하여 실행합니다.
다음 명령을 이용하여 db.sqlite 파일이 있는 파이썬 예제 폴더로 이동합니다.
CD 이동할폴더경로 <엔터>
예) cd C:\Users\Administrator\Desktop\파이썬예제
그곳에서 sqlite3를 실행합니다. (PATH에 경로가 등록되었으면 실행됨)
sqlite3 <엔터>
실행되었으면 메시지가 출력되고 프롬프트가 sqlite>처럼 바뀝니다.
SQLite version 3.34.1 2021-01-20 14:10:07
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite> _
이제 예제로 만든 DB를 열고 테이블 내용을 살펴보겠습니다.
sqlite> .open db.sqlite <--- 앞에 점 입력
sqlite> .table
friends <-- 존재하는 테이블 이름이 출력됨
sqlite> .mode column
sqlite> .head on
sqlite> select * from friends; <-- 끝에 ; 세미콜론 입력!!!
sqlite> .quit
[실행 결과]
name birthday tel
---- ---------- --------------
홍길동 1500-05-09 010-1234-0000
홍길순 1500-05-09 010-1234-0001
홍길동 1500-05-09 010-1234-0002
홍길동 1500-05-09 010-1234-0003
홍길동 1500-05-09 010-1234-0004
...
홍길동 1500-05-09 010-1234-00018
홍길동 1500-05-09 010-1234-00019
홍길동 1500-05-09 010-1234-00020
이상.
'Python 활용' 카테고리의 다른 글
파이썬, playsound 모듈을 이용한 사운드 출력 (for Windows) (0) | 2021.02.15 |
---|---|
파이썬, openpyxl 모듈로 엑셀 파일 다루기 (0) | 2021.02.06 |
파이썬, 마우스 클릭 검사 (후킹) (0) | 2020.03.07 |
파이썬, 과거 로또 번호를 가져와서 출력하고 파일에 저장 2 (0) | 2020.01.29 |
파이썬, 과거 로또 번호 가져와서 출력하고 저장 1 (0) | 2020.01.26 |