파이썬:sqlite3(sqlite3 연동)

학교의 모든 지식. SMwiki
Sam (토론 | 기여)님의 2021년 4월 11일 (일) 13:01 판 (→‎데이터 조작)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
둘러보기로 이동 검색으로 이동

파이썬 공부를 위한 틀 틀:파이썬

  1. 파이썬:개요
    1. 파이썬:코딩팁
      1. 파이썬:파이참
    2. 파이썬:가상환경
    3. 파이썬:연산자
  2. 파이썬:변수
    1. 파이썬:자료형
      1. 파이썬:문자열
    2. 파이썬:자료구조
  3. 파이썬:함수
    1. 파이썬:자주사용하는 함수
  4. 파이썬:데코레이터
  5. 파이썬:제어문
    1. 파이썬:조건문
    2. 파이썬:반복문
  6. 파이썬:클래스
  7. 파이썬:데이터 입출력
    1. 파이썬:api
  8. 파이썬:라이브러리
    1. 파이썬:time, datetime(시간 다루기)
    2. 파이썬:os(운영체제 기능 이용)
    3. 파이썬:sys(인터프리터 관련 기능 제공)
    4. 파이썬:schedule(예약명령)
    5. 파이썬:COM(다른 프로그램과 연동)
    6. 판다스(데이터 분석)
    7. pybithumb(비트코인 거래)
    8. 파이썬:requests(api다루기)
    9. 파이썬:pymysql(mysql 연동)
    10. 파이썬:sqlite3(sqlite3 연동)
    11. 파이썬:math(숫자, 계산 관련)
    12. 파이썬:numpy(다차원 배열 및 데이터 다루기)
    13. 파이썬:matplotlib(그래프, 데이터 시각화)
    14. 파이썬:keras(딥러닝)
    15. 파이썬:turtle(그리기)
  9. 파이썬:프레임워크
    1. 장고:개요
  10. 파이썬:팁
    1. 파이썬:에러
    2. 파이썬:PUBG API 사용하기
    3. 파이썬:주식거래
  11. 파이썬:window창
  12. 파이썬:다양한 전략
    1. 파이썬:회귀분석
    2. 파이썬:상관관계 알아보기
    3. 파이썬:투자방법 개요

개요[편집 | 원본 편집]

데이터를 메모장이나 엑셀 등으로 저장하는 것도 괜찮지만... 속도의 효율 등을 따져보면 그닥 이득은 아닐 것이다. 때문에 거대한 데이터를 다루기 위해선 DB가 필수적.

굳이 운영체제에 설치하지 않고도, 패키지만으로 DB를 다룰 수 있다.

특, 장점[편집 | 원본 편집]

파일 하나가 하나의 DB.

한계[편집 | 원본 편집]

동시접근이 안된다.

기본사용법[편집 | 원본 편집]

의도 설명 코드
DB파일만들기 저장파일을 만든다.

만약 이미 있으면 연결.

DB객체=sqlite3.connect('주소/DB이름')
커서객체 생성 conn은 sqlite엔진에 연결.

커서객체를 만들면 SQL 질의를 자유롭게 쓸 수 있다.

(아래의 데이터조작 참조)

커서객체=DB객체.cursor()
연결종료 종료한다. DB객체.close()

테이블 조작[편집 | 원본 편집]

의도 설명 코드
테이블 생성 커서객체.execute('create table if not exists 테이블명(열1, 열2)')
테이블 삭제 커서객체.execute('drop table if exists 테이블명')

데이터 조작[편집 | 원본 편집]

의도 설명 코드
테이블에 데이터 삽입 values의 '내용1' 대신 ? 를 넣어주고, 2번째 매개변수에 실제 값을 넣어주어도 된다.

(다른 DB에서는 다른 방식으로 편의를 도모한다.)

커서객체.execute("insert into 테이블명 values('내용1', '내용2')")

커서객체.execute("insert into 테이블명 values(?, ?)", (값1, 값2))

DB에 반영 다음의 코드를 실행해줘 내용을 DB에 반영한다. DB객체.commit()
데이터 불러오기(하나) 테이블에 접근한 후 불러온다.

커서가 이동하며 한줄씩 읽는다.

커서객체.execute('select * from 테이블명')

객체=커서객체.fetchone()

데이터 전체 불러오기 전체를 읽어와 리스트로 반환. 커서객체.execute('select * from 테이블명')

객체=커서객체.fetchall()