파이썬에서 오라클을 다루기 위해서 주로 cx_Oracle 라이브러리를 많이 사용합니다.

그리고 쿼리를 전달할 때 where 절에 한글이 들어가야 하는 경우도 있는데,

그냥 전달할 경우 한글을 인식하지 못해 제대로 된 결과 값이 안 나오는 경우가 있습니다.


# -*- coding: utf-8 -*-

import cx_Oracle

db = cx_Oracle.connect(DB접속 정보)

cursor = db.cursor()

SELECT * FROM table_name WHERE title like '%한글제목%'


위와 같이 쿼리를 전달할 경우 제대로 된 결과값이 안 나옵니다.

아래 처럼 utf-8로 decode 된 값으로 전달을 해줘야 제대로 출력되는 것을 볼 수 있습니다.


# -*- coding: utf-8 -*-

import cx_Oracle

db = cx_Oracle.connect(DB접속 정보)

cursor = db.cursor()

cusor.execute("SELECT * FROM table_name WHERE title like '%한글제목%'".decode('utf8'))

저작자 표시 비영리 변경 금지
신고

+ Recent posts

티스토리 툴바