728x90
반응형

테이블 생성 및 삽입

# 테이블 생성 및 삽입

import sqlite3
import datetime

 

삽입 날짜 생성

# 삽입 날짜 생성
now = datetime.datetime.now()
print('now : ', now)

nowDatetime = now.strftime('%Y-%m-%d %H:%M:%S')
print('nowDatetime : ', nowDatetime)

#sqlite3
print('sqlite3.version : ', sqlite3.version)
print('sqlite3.sqlite_version : ', sqlite3.sqlite_version)

 

DB 생성 및 Auto Commit(Roolback)

# DB 생성 및 Auto Commit(Roolback)
conn = sqlite3.connect('D:/python/fastcamp_python/fundational/resource/database2.db',isolation_level=None)

 

Cursor

# Cursor
c = conn.cursor()
print('Cursor Type : ',type(c))

 

테이블 생성

# 테이블 생성(Data Type : TEXT, NUMERIC INTEGER REAL BLOB)

c.execute("CREATE TABLE IF NOT EXISTS users(id INTEGER PRIMARY KEY, username text, email text,phone text, website text, regdate text)") # 테이블이 없으면 만들겠다. 있으면 그대로 사용

 

데이터 삽입

# 데이터 삽입
c.execute('INSERT INTO users VALUES(1, "LEE", "as_thtls@naver.com","010-1111-2222","Lee.com", ?)', (nowDatetime,))

 

결과

[그림1] 테이블 생성 및 데이터 삽입 결과

 

데이터 삽입 2

# 데이터 삽입2
c.execute("INSERT INTO users(id, username, email, phone, website, regdate) Values(?,?,?,?,?,?)",(2, 'Park', 'Park@naver.com','010-2222-1111','PARK.com',nowDatetime))

[그림2] 데이터 삽입 2

 

한 번에 많이 삽입(튜플, 리스트)

# Many 삽입(튜플, 리스트)
userList = (
    (3, 'Kim', 'Kim@naver.com', '010-3333-4444', 'Kim.com',nowDatetime),
    (4, 'Cho', 'Cho@naver.com', '010-4444-3333', 'Cho.com',nowDatetime),
    (5, 'Na', 'Na@naver.com', '010-5555-5555', 'Na.com',nowDatetime)
)

c.executemany("INSERT INTO users(id, username, email, phone, website, regdate) VALUES(?,?,?,?,?,?)", userList)

[그림3] 한번에 여러 개 삽입

 

테이블 데이터 삭제

# 테이블 데이터 삭제
conn.execute("DELETE FROM users") # 전체 삭제

[그림4] 테이블 데이터 삭제

 

# 테이블 데이터 삭제
print("users db deleted : ", conn.execute("DELETE FROM users").rowcount) # 지운 후 지워진 반환값 

 

[그림5] 반환값
[그림6] 삭제 결과

 

커밋

# 커밋 : isolation_level = None 일 경우 자동 반영(오토 커밋)
#conn.commit() # 직접 실행시 반영 isolation없는 경우

 

롤백

# 롤백
# conn.rollback()

 

접속해제

# 접속 해제
conn.close()
728x90
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기