1 . mysqlclient
- 파이썬에서 MySQL 데이터베이스와 상호작용하기 위해 사용하는 공식 라이브러리
- PyMySQL, mysqlclient를 가장 많이 사용
- 사용법은 비슷하나 mysqlclient가 속도상으로 유리하기 때문에 권장

1 - 1 . MySQL 접속
=> MySQLdb.connect(host='IP주소', user='사용자명', password='비밀번호', db='데이터베이스명')

1 - 2 . cursor 생성
- 하나의 데이터베이스 connection에 대해 독립적으로 SQL문을 실행할 수 있는 작업 환경을 제공하는 객체
- 하나의 connection에 동시에 한 개의 cursor만 생성할 수 있으며 cursor을 통해 SQL문을 실행하면 튜플 단위로 결과 반환

- cur.execute() : 행의 갯수 반환
1 - 3 . SQL문의 결과 반환
- fetchall() : 한 번에 모든 튜플을 가져옴, 검색 결과가 매우 많다면 메모리 오버헤드가 발생할 수 있음, 재 실행시 내용이 안 뜸
- fetchone() : 한 번에 하나의 튜플을 가져옴, 다시 fetchone() 메서드를 호출하면 다음 데이터를 가져옴


- execute() : 실행 메서드
- execute(SQL문, 값)


- 두 코드 실행 결과 => 동일
- while문 사용하기

1 - 4 . 딕셔너리 형태로 결과 반환 받기
=>cursor(MtSQLdb.cursors.DictCursor)


- 전부 다 출력
- while문 사용
- cur.execute(sql)을 다시 실행해줘야 데이터가 다시 생김 -> fetchall() 사용으로 커서가 다음으로 넘어감 -> cur.execute(sql)을 다시 실행하지 않은 상태로 fetchall()를 재실행하면 내용이 나오지 않음

1 - 5 . Cursor, Connection 닫기
- 사용 후 연결을 끊어줘야함

2 . 데이터 삽입하기
- 파이썬에서 MySQL에 접속하고 SQL을 실행하기 위한 기본 과정

- 데이터 한 개 삽입하기

-> 인자 수가 동일해야 함
- 데이터 여러 개 삽입하기 -> 리스트로 진행


- 사용 후 연결 끊어주기
3 . 예제 실습
3 - 1 . 회원가입 프로그램 만들기

3 - 2 . 로그인 프로그램 만들기

3 - 3 . 회원정보 수정하기

3 - 4 . 회원 탈퇴하기

- 따로 찾아본 내용
import MySQLdb : MySQLdb 라이브러리를 메모리에 불러오는 것
MySQLdb.connect(. . .) : connect() 함수를 사용해 MySQLdb를 서버에 접속하는 것
cur = db.cursor() : SQL 실행도구 생성
cur.execute() : SQL 실행, 조회된 내용의 행 개수 출력
insert(), delete() 등을 수행해도 원본이 바뀌지 않으므로 커밋해줘야 함
update는 항상 컬럼 =값 형식
insert는 (컬럼) values (값) 형식
cur.execute()에서 값 자리에는 튜플 형식만 들어갈 수 있어 값이 1개일 때는 괄호 안에 반점을 같이 써줘야 함 ex) (userid, )
'DBMS' 카테고리의 다른 글
| MySQL을 활용한 단어장 만들기 (0) | 2026.06.09 |
|---|---|
| 7_ 뷰(View) (0) | 2026.06.09 |
| 5 . 사용자 계정 (0) | 2026.06.08 |
| 6 . MySQL 함수 (0) | 2026.06.08 |
| 4 . 서브쿼리 (1) | 2026.06.08 |