이번 포스팅에서는 파이썬으로 MySQL을 사용하는 방법에 대해 알아보도록 하겠습니다.
1. 모듈 설치
pip install mysql-connector-python
import mysql.connector
2. 데이터베이스 연결
local = mysql.connector.connect(
host='localhost',
user=<유저명>,
password=<비밀번호>,
database=<DB명>
)
local.close()
우선 로컬 DB에 연결하는 방법부터 알아보겠습니다.
connect 메서드를 실행하여 DB 관련 정보를 입력해야 합니다.
사용을 종료할 때는 close 메서드를 실행해 종료합니다.
# 원격 DB에 연결
remote = mysql.connector.connect(
host=<호스트 주소>,
port=<포트명>,
user=<유저명>,
password=<비밀번호>,
database=<DB명>
)
remote.close()
원격 DB에 연결하는 방법도 동일합니다.
AWS RDS를 사용하는 경우에는 다음 예제코드처럼 입력해서 연결합니다.
3. 쿼리문 실행
# 원격 DB에 연결
my_db = mysql.connector.connect(
host=<호스트 주소>,
user=<유저명>,
password=<비밀번호>,
database=<DB명>
)
my_cursor = my_db.cursor()
my_cursor.execute(<쿼리>)
...
my_db.close()
DB 연결을 마친 후에 쿼리를 실행하기 위해서는 cursor 객체를 생성해야 합니다.
cursor 메서드를 사용합니다.
...
cur = remote.cursor(buffered=True)
cur.execute('SELECT * FROM sql_file')
...
조회해야 할 데이터의 양이 많은 경우에는 추가 옵션을 설정합니다.
buffered 매개변수에 인수로 True를 전달하면 됩니다.
my_db = mysql.connector.connect(
host=<호스트 주소>,
user=<유저명>,
password=<비밀번호>,
database=<DB명>
)
my_cursor = my_db.cursor()
my_cursor.execute(<쿼리>)
...
my_db.commit() # ✅
...
my_db.close()
참고로 쿼리문을 실행해도 해당 내용이 바로 테이블에 적용되지는 않습니다.
대신에 commit 메서드를 통해 적용 시점을 조정할 수 있습니다.
예를 들면 csv 파일을 DB 테이블로 옮기는 경우에 commit 메서드를 사용할 수 있습니다.
4. SQL 파일 실행
my_db = mysql.connector.connect(
host=<호스트 주소>,
user=<유저명>,
password=<비밀번호>,
database=<DB명>
)
my_cursor = my_db.cursor()
sql = open('<파일명>.sql').read()
my_cursor.execute(sql)
특정 SQL 파일을 실행하는 방법입니다.
파일을 열고 읽는 작업이 필요합니다.
my_db = mysql.connector.connect(
host=<호스트 주소>,
user=<유저명>,
password=<비밀번호>,
database=<DB명>
)
my_cursor = my_db.cursor()
sql = open('<파일명>.sql').read()
result = my_cursor.execute(sql, multi=True)
SQL 파일에 여러 쿼리문이 작성되어 있는 경우에는 옵션을 추가로 설정해야 합니다.
multi 매개변수의 인수로 True를 전달하면 됩니다.
여러 개의 쿼리가 있는데 옵션을 설정하지 않으면 에러가 발생하기 때문에 주의해야 합니다.
마치며
이상으로 파이썬으로 MySQL을 다루는 법에 대한 정리를 마치도록 하겠습니다.
다음 포스팅에서는 기본키와 외래키에 대해 알아보도록 하겠습니다.
[MySQL]기본키와 외래키 알아보기
이번 포스팅에서는 테이블의 기본키와 외래키에 대해 알아보도록 하겠습니다. 1. 기본키(Primary Key) 1-1. 기본키 특징 테이블의 각 레코드를 식별합니다. 중복되지 않는 고유값입니다. NULL값이 될
parix-data.tistory.com
'데이터베이스・SQL' 카테고리의 다른 글
[MySQL]SQL 연산자 정리(비교/논리연산자) (0) | 2023.07.25 |
---|---|
[MySQL]DB 테이블 데이터 다루기(INSERT/SELECT/UPDATE/DELETE) (0) | 2023.07.25 |
[MySQL]기본키와 외래키 알아보기 (0) | 2023.07.25 |
[MySQL]DB 테이블 생성/수정/삭제 명령어 정리 (0) | 2023.07.24 |
[MySQL]AWS RDS 사용해보기 (0) | 2023.07.24 |
이번 포스팅에서는 파이썬으로 MySQL을 사용하는 방법에 대해 알아보도록 하겠습니다.
1. 모듈 설치
pip install mysql-connector-python
import mysql.connector
2. 데이터베이스 연결
local = mysql.connector.connect(
host='localhost',
user=<유저명>,
password=<비밀번호>,
database=<DB명>
)
local.close()
우선 로컬 DB에 연결하는 방법부터 알아보겠습니다.
connect 메서드를 실행하여 DB 관련 정보를 입력해야 합니다.
사용을 종료할 때는 close 메서드를 실행해 종료합니다.
# 원격 DB에 연결
remote = mysql.connector.connect(
host=<호스트 주소>,
port=<포트명>,
user=<유저명>,
password=<비밀번호>,
database=<DB명>
)
remote.close()
원격 DB에 연결하는 방법도 동일합니다.
AWS RDS를 사용하는 경우에는 다음 예제코드처럼 입력해서 연결합니다.
3. 쿼리문 실행
# 원격 DB에 연결
my_db = mysql.connector.connect(
host=<호스트 주소>,
user=<유저명>,
password=<비밀번호>,
database=<DB명>
)
my_cursor = my_db.cursor()
my_cursor.execute(<쿼리>)
...
my_db.close()
DB 연결을 마친 후에 쿼리를 실행하기 위해서는 cursor 객체를 생성해야 합니다.
cursor 메서드를 사용합니다.
...
cur = remote.cursor(buffered=True)
cur.execute('SELECT * FROM sql_file')
...
조회해야 할 데이터의 양이 많은 경우에는 추가 옵션을 설정합니다.
buffered 매개변수에 인수로 True를 전달하면 됩니다.
my_db = mysql.connector.connect(
host=<호스트 주소>,
user=<유저명>,
password=<비밀번호>,
database=<DB명>
)
my_cursor = my_db.cursor()
my_cursor.execute(<쿼리>)
...
my_db.commit() # ✅
...
my_db.close()
참고로 쿼리문을 실행해도 해당 내용이 바로 테이블에 적용되지는 않습니다.
대신에 commit 메서드를 통해 적용 시점을 조정할 수 있습니다.
예를 들면 csv 파일을 DB 테이블로 옮기는 경우에 commit 메서드를 사용할 수 있습니다.
4. SQL 파일 실행
my_db = mysql.connector.connect(
host=<호스트 주소>,
user=<유저명>,
password=<비밀번호>,
database=<DB명>
)
my_cursor = my_db.cursor()
sql = open('<파일명>.sql').read()
my_cursor.execute(sql)
특정 SQL 파일을 실행하는 방법입니다.
파일을 열고 읽는 작업이 필요합니다.
my_db = mysql.connector.connect(
host=<호스트 주소>,
user=<유저명>,
password=<비밀번호>,
database=<DB명>
)
my_cursor = my_db.cursor()
sql = open('<파일명>.sql').read()
result = my_cursor.execute(sql, multi=True)
SQL 파일에 여러 쿼리문이 작성되어 있는 경우에는 옵션을 추가로 설정해야 합니다.
multi 매개변수의 인수로 True를 전달하면 됩니다.
여러 개의 쿼리가 있는데 옵션을 설정하지 않으면 에러가 발생하기 때문에 주의해야 합니다.
마치며
이상으로 파이썬으로 MySQL을 다루는 법에 대한 정리를 마치도록 하겠습니다.
다음 포스팅에서는 기본키와 외래키에 대해 알아보도록 하겠습니다.
[MySQL]기본키와 외래키 알아보기
이번 포스팅에서는 테이블의 기본키와 외래키에 대해 알아보도록 하겠습니다. 1. 기본키(Primary Key) 1-1. 기본키 특징 테이블의 각 레코드를 식별합니다. 중복되지 않는 고유값입니다. NULL값이 될
parix-data.tistory.com
'데이터베이스・SQL' 카테고리의 다른 글
[MySQL]SQL 연산자 정리(비교/논리연산자) (0) | 2023.07.25 |
---|---|
[MySQL]DB 테이블 데이터 다루기(INSERT/SELECT/UPDATE/DELETE) (0) | 2023.07.25 |
[MySQL]기본키와 외래키 알아보기 (0) | 2023.07.25 |
[MySQL]DB 테이블 생성/수정/삭제 명령어 정리 (0) | 2023.07.24 |
[MySQL]AWS RDS 사용해보기 (0) | 2023.07.24 |