🔥 pymysql 이란?
🔥 pymysql로 데이터 생성(Create)
🔥 pymysql로 데이터 읽기(Read)
🔥 pymysql로 데이터 수정(Update)
🔥 pymysql로 데이터 삭제(Delete)
✍🏻 python
# 터미널에서 pip3 install pymysql # 1단계 : import import pymysql # 2단계 : connect(mysql 접속) db = pymysql.connect(host='localhost', port=3306, user='root', passwd='내 비밀번호 입력', db='ecommerce', charset='utf8') # 3단계 : cusor : 커서 생성 cursor = db.cursor()
✍🏻 python
# 1단계 : import import pymysql # 2단계 : connect : mysql 접속 db = pymysql.connect(host='localhost', port=3306, user='root', passwd='내 비밀번호', db='ecommerce', charset='utf8') # 3단계 : cusor : 커서 생성 cursor = db.cursor() # 4단계 : sql문 작성(테이블 생성 sql문 작성) sql = """ CREATE TABLE product( PRODUCT_CODE VARCHAR(20) NOT NULL, TITLE VARCHAR(200) NOT NULL, ORI_PRICE INT, DISCOUNT_PRICE INT, DISCOUNT_PERCENT INT, DELIVERY VARCHAR(2), PRIMARY KEY(PRODUCT_CODE) ); """ # 5단계 : sql 실행 명령(테이블 생성) cursor.execute(sql) # cusor 객체의 execute() 메서드를 사용하여 CRUD 문장을 데이터베이스 서버로 보냄 # 6단계 : 실행 결과 확정 선언 db.commit() # CRUD가 완료되었으면, commit()메서드를 사용하여 데이터를 commit # 7단계 : DB연결 해제 db.close()
1) 데이터 삽입 방법
- import ⇢ db접속 ⇢ curosor 생성 ⇢ sql문 작성 ⇢ sql문 실행 ⇢ 실행 결과 확정(commit) ⇢ 연결 해제
- 데이터 삽입 방법은 sql문과 동일
- 방법1 : INSERT INTO [테이블명] VALUES(value1, value2, value3...)
- 🔍 INSERT INTO model_info VALUES(1, 'i7', '7700', 'Kaby Lake');
- 방법2 : INSERT INTO [테이블명] (field1, field2, field3...) VALUES (value1, value2, value3...)
- 🔍 INSERT INTO model_info (name, model_num, model_type) VALUES('i7', '9700', 'ice Lake');
✍🏻 python - 데이터 삽입 기본
# 1단계 : import import pymysql # 2단계 : connect : mysql 접속 db = pymysql.connect(host='localhost', port=3306, user='root', passwd='비밀번호', db='ecommerce', charset='utf8') # 3단계 : cusor : 커서 생성 cursor = db.cursor() # 4단계 : sql문 작성(데이터 create) sql = """ INSERT INTO product VALUES('215673140', '스위트바니 여름신상5900원-롱원피스티셔츠/긴팔/반팔', 23000, 6900, 70, 'F'); """ # 5단계 : sql문 실행(데이터 create 실행) cursor.execute(sql) # 6단계 : 실행 결과 확정 db.commit() # 7단계 : 연결 해제 db.close()
✍🏻 python - for문으로 여러 데이터 삽입
# 1단계 : import import pymysql # 2단계 : connect : mysql 접속 db = pymysql.connect(host='localhost', port=3306, user='root', passwd='비밀번호', db='ecommerce', charset='utf8') # 3단계 : cusor : 커서 생성 cursor = db.cursor() # 4단계 : sql문 작성(데이터 create) for index in range(10): # 4-1단계 : for문으로 데이터 여러게 삽입 product_code = 215673140 + index + 1 sql = """ INSERT INTO product VALUES( '"""+ str(product_code) +"""', '스위트바니 여름신상5900원-롱원피스티셔츠/긴팔/반팔', 23000, 6900, 70, 'F');""" cursor.execute(sql) # 5단계 : sql문 실행(데이터 create 실행) # 6단계 : 실행 결과 확정 db.commit() # 7단계 : 연결 해제 db.close()
1) fetchall() : 모든 레이블(row)를 fetch
✍🏻 python
# 1단계 : import import pymysql # 2단계 : connect : mysql 접속 db = pymysql.connect(host='localhost', port=3306, user='root', passwd='비밀번호', db='ecommerce', charset='utf8') # 3단계 : cusor : 커서 생성 cursor = db.cursor() # 4단계 : sql문 작성(데이터 read) sql = "SELECT * FROM product" # 5단계 : sql문 실행(데이터 read) cursor.execute(sql) # 6단계 : fetch 메서드(조회결과 콘솔창에서 보기 위함) result = cursor.fetchall() # fetchall() : 전부 가져오기 # 7단계 : 실행 결과 콘솔창에서 출력 for data in result: print(data) # 8단계 : commit 및 연결 해제 db.commit() # 커밋은 반복할 필요 없음 db.close()
2) fetchmany(size=num) : size만큼 레이블(row) fetch
✍🏻 python
# 1단계 : import import pymysql # 2단계 : connect : mysql 접속 db = pymysql.connect(host='localhost', port=3306, user='root', passwd='비밀번호', db='ecommerce', charset='utf8') # 3단계 : cusor : 커서 생성 cursor = db.cursor() # 4단계 : sql문 작성(데이터 read) sql = "SELECT * FROM product" # 5단계 : sql문 실행(데이터 read) cursor.execute(sql) # 6단계 : fetch 메서드(조회결과 콘솔창에서 보기 위함) result = cursor.fetchmany(size=5) # fetmany(size=?) : size만큼 레이블(row)가져오기 # 7단계 : 실행 결과 콘솔창에서 출력 for data in result: print(data) # 8단계 : commit 및 연결 해제 db.commit() db.close()
3) fetchone() : SELECT된 데이터 중 첫번째 레이블(🔥1개만 갖고오기 때문에 for문 필요없음)
✍🏻 python
# 1단계 : import import pymysql # 2단계 : connect : mysql 접속 db = pymysql.connect(host='localhost', port=3306, user='root', passwd='비밀번호', db='ecommerce', charset='utf8') # 3단계 : cusor : 커서 생성 cursor = db.cursor() # 4단계 : sql문 작성(데이터 read) sql = "SELECT * FROM product" # 5단계 : sql문 실행(데이터 read) cursor.execute(sql) # 6단계 : fetch 메서드(조회결과 콘솔창에서 보기 위함) result = cursor.fetchone() # fetchone() : 1개 fetch # 7단계 : 콘솔창에 출력 print(result) # 8단계 : commit 및 연결 해제 db.commit() db.close()
✍🏻 python
import pymysql # 2단계 : connect : mysql 접속 db = pymysql.connect(host='localhost', port=3306, user='root', passwd='비밀번호', db='ecommerce', charset='utf8') # 3단계 : cusor : 커서 생성 cursor = db.cursor() # 4단계 : sql문 작성(데이터 수정) : PRODUCT_CODE가 '215673141'인 레이블 중 4가지 필드 수정(DELIVERY 제외) sql = """ UPDATE product SET TITLE='달리샵린넨원피스 뷔스티에 썸머 가디건 코디전', ORI_PRICE=33000, DISCOUNT_PRICE=9900, DISCOUNT_PERCENT=70 WHERE PRODUCT_CODE = '215673141' """ # 5단계 : sql문 실행(데이터 수정) cursor.execute(sql) # 6단계 : commit 및 연결 해제 db.commit() db.close()
✍🏻 python
import pymysql # 2단계 : connect : mysql 접속 db = pymysql.connect(host='localhost', port=3306, user='root', passwd='jewon119sql', db='ecommerce', charset='utf8') # 3단계 : cusor : 커서 생성 cursor = db.cursor() # 4단계 : sql문 작성(데이터 삭제) : PRODUCT_CODE가 '215673142'인 레이블 삭제 sql = "DELETE FROM product WHERE PRODUCT_CODE = '215673142'" # 5단계 : sql문 실행(데이터 삭제 명령) cursor.execute(sql) # 6단계 : commit 및 연결 해제 db.commit() db.close()