25.sqllite연동
SQLITE에 사용하기
SQLITE: DB 서버가 필요없는 임베디드 관계형 데이터베이스로 경량의 데이터베이스 오픈소스 엔진이다
별도의 DB서버가 없어도 쉽고, 편리하게 사용 할 수 있다
모바일이나 임베디드 기기에서 많이사용하면 신로성이 높은 편이다
import sqlite3
import datetime
현재 시간 생성
now= datetime.datetime.now()
print("now:" now)
날짜 생성하기
now_date_time = now.strftime('%Y-%m-%d')
now_date_time = now.strftime('%y-%m-%d %H:%M:%S')
print('now_date_time :', now_date_time)
폴더에 파일 생성하기
conn = sqlite3.connect('생성할 파일명')
print(type(conn))
cursor 클래스:sql 문장 수행 및 레코드 탐색
cur = conn.cursor()
print(type(cur))
sql의 데이터 타입
1.integer:정수
2.real: 실수
3.text:문자열
4.blob(Binary Large Object)
- 테이블 생성
user 테이블이 존재하면 만들지 말고 없으면 생성하라
cur.execute("create table if not exists user\
id integer primary key, username text, email text, tel text,\
website text, reg_date text)")
- 데이터 삽입(insert into이용) values값을 ?으로 줄 수 있다(현재날짜가 들어갈 값)
cur.execute("insert into user values(1,'홍길동','test@gmail.com'\
'010-1234-1234','www.test.com',?)",(now_date_time,))
- 여러개의 테이블을 한꺼번에 삽입하기(executemany 이용-튜플,리스트)
user_list = [
(4, '김말똥', 'test@daum.net', '010-4444-4444', 'www.kim.com', now_date_time),
(5, '이말똥', 'test11@daum.net', '010-5554-4444', 'www.lee.com', now_date_time),
(6, '최말똥', 'test22@daum.net', '010-6664-4444', 'www.choi.com', now_date_time)
]
cur.executemany("insert into user valuess(?,?,?,?,?,?)", user_list)
- 테이블 전체 삭제하기
cur.execute("delete from user")
-삭제 결과 확인하기
print('user DB deleted : ', conn.execute("delete from user").rowcount,'행')
- 데이터 완료시 저장하기
conn.commit
- 접속해제(리소스 반납)
conn.close()
댓글남기기