Toggle theme
문제를 잘 정의하는 것은 문제를 절반 해결한 것이다. - 2023.12
사용자 도구
Toggle theme
로그인
사이트 도구
검색
도구
문서 보기
이전 판
PDF로 내보내기
Fold/unfold all
역링크
최근 바뀜
미디어 관리자
사이트맵
로그인
>
최근 바뀜
미디어 관리자
사이트맵
현재 위치:
start
»
wiki
»
ai
»
python
»
데이터베이스_연동_sqlite_-_테이블_생성_및_삽입
wiki:ai:python:데이터베이스_연동_sqlite_-_테이블_생성_및_삽입
이 문서는 읽기 전용입니다. 원본을 볼 수는 있지만 바꿀 수는 없습니다. 문제가 있다고 생각하면 관리자에게 문의하세요.
====== 테이블 생성 및 삽입 ====== <WRAP left notice 80%> * description : 테이블 생성 및 삽입 * author : 도봉산핵주먹 * email : hylee@repia.com * lastupdate : 2020-06-26 </WRAP> <WRAP clear/> ===== 테이블 생성 및 삽입 ===== ==== 준비사항 ==== > 기존 DB TOOL을 이용해도 되지만 가벼운 DB TOOL 첨부할테니 필요하신 분은 사용 하시면 됩니다. > 예제 코드 중 ''database.db'' 파일을 생성하는데 DB TOOL로 해당 파일을 열면 안에 데이터를 확인할 수 있습니다. {{ :wiki:ai:python:sqlitedatabasebrowserportable_3.10.1_english.paf.zip |SQLiteDatabase}} ==== 예제 코드 ==== <code python> # Section12-1 # 파이썬 데이터베이스 연동(SQLite) # 테이블 생성 및 삽입 import datetime import sqlite3 # 삽입 날짜 생성 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생성 & Autocommit # 본인 DB 파일 생성할 경로 # conn = sqlite3.connect('본인이 원하는 경로/database.db/database.db') conn = sqlite3.connect('D:/python_bnasic/resource/database.db', isolation_level=None) # DB생성(메모리) # conn = sqlite3.connect(":memory:") # Cursor연결 c = conn.cursor() print('Cursor Type : ', type(c)) # 테이블 생성(Datatype : 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 \ )") # AUTOINCREMENT # \ --> 다음 줄 연결 # IF NOT EXISTS --> 없으면 만든다 # 데이터 삽입 c.execute("INSERT INTO users VALUES (1 ,'Kim','Kim@naver.com', '010-0000-0000', 'Kim.com', ?)", (nowDatetime,)) c.execute("INSERT INTO users(id, username, email, phone, website, regdate) VALUES (?, ?, ?, ?, ?, ?)", (2, 'Park', 'Park@naver.com', '010-1111-1111', 'Park.com', nowDatetime)) # Many 삽입(튜플, 리스트) userList = ( (3, 'Lee', 'Lee@naver.com', '010-2222-2222', 'Lee.com', nowDatetime), (4, 'Cho', 'Cho@naver.com', '010-3333-3333', 'Cho.com', nowDatetime), (5, 'Yoo', 'Yoo@naver.com', '010-4444-4444', 'Yoo.com', nowDatetime) ) c.executemany("INSERT INTO users(id, username, email, phone, website, regdate) VALUES (?, ?, ?, ?, ?, ?)", userList) # 테이블 데이터 삭제 # print("users db deleted : ", conn.execute("delete from users").rowcount, "rows") # .rowcount --> 몇개 지웠는지 확인 # 커밋 : isolation_level=None 일 경우 자동 반영(Auto Commit) conn.commit() # 롤백 # conn.rollback() # 접속 해제 conn.close() </code> ===== Tip ===== > 실행 결과는 다음 조회예제에서 select로 확인 가능합니다. * [[wiki:ai:python:데이터베이스 연동(SQLite) - 테이블 조회|데이터베이스 연동(SQLite) - 테이블 조회]] {{tag>도봉산핵주먹 python }}
/volume1/web/dokuwiki/data/pages/wiki/ai/python/데이터베이스_연동_sqlite_-_테이블_생성_및_삽입.txt
· 마지막으로 수정됨: 2023/01/13 18:44 (바깥 편집)
문서 도구
문서 보기
이전 판
역링크
PDF로 내보내기
Fold/unfold all
맨 위로